Lines Matching full:target

104   static void mapping(IO &IO, IFSTarget &Target) {  in mapping()
105 IO.mapOptional("ObjectFormat", Target.ObjectFormat); in mapping()
106 IO.mapOptional("Arch", Target.ArchString); in mapping()
107 IO.mapOptional("Endianness", Target.Endianness); in mapping()
108 IO.mapOptional("BitWidth", Target.BitWidth); in mapping()
145 IO.mapOptional("Target", Stub.Target); in mapping()
158 IO.mapOptional("Target", Stub.Target.Triple); in mapping()
166 /// Attempt to determine if a Text stub uses target triple.
170 if (Line.starts_with("Target:")) { in usesTriple()
171 if (Line == "Target:" || Line.contains("{")) { in usesTriple()
195 if (Stub->Target.ArchString) { in readIFSFromBuffer()
197 ELF::convertArchNameToEMachine(*Stub->Target.ArchString); in readIFSFromBuffer()
201 "IFS arch '" + *Stub->Target.ArchString + "' is unsupported"); in readIFSFromBuffer()
202 Stub->Target.Arch = eMachine; in readIFSFromBuffer()
216 if (Stub.Target.Arch) { in writeIFSToOutputStream()
217 CopyStub->Target.ArchString = in writeIFSToOutputStream()
218 std::string(ELF::convertEMachineToArchName(*Stub.Target.Arch)); in writeIFSToOutputStream()
220 IFSTarget Target = Stub.Target; in writeIFSToOutputStream() local
222 if (CopyStub->Target.Triple || in writeIFSToOutputStream()
223 (!CopyStub->Target.ArchString && !CopyStub->Target.Endianness && in writeIFSToOutputStream()
224 !CopyStub->Target.BitWidth)) in writeIFSToOutputStream()
238 if (Stub.Target.Arch && *Stub.Target.Arch != *OverrideArch) { in overrideIFSTarget()
242 Stub.Target.Arch = *OverrideArch; in overrideIFSTarget()
245 if (Stub.Target.Endianness && in overrideIFSTarget()
246 *Stub.Target.Endianness != *OverrideEndianness) { in overrideIFSTarget()
250 Stub.Target.Endianness = *OverrideEndianness; in overrideIFSTarget()
253 if (Stub.Target.BitWidth && *Stub.Target.BitWidth != *OverrideBitWidth) { in overrideIFSTarget()
257 Stub.Target.BitWidth = *OverrideBitWidth; in overrideIFSTarget()
260 if (Stub.Target.Triple && *Stub.Target.Triple != *OverrideTriple) { in overrideIFSTarget()
264 Stub.Target.Triple = *OverrideTriple; in overrideIFSTarget()
271 if (Stub.Target.Triple) { in validateIFSTarget()
272 if (Stub.Target.Arch || Stub.Target.BitWidth || Stub.Target.Endianness || in validateIFSTarget()
273 Stub.Target.ObjectFormat) { in validateIFSTarget()
275 "Target triple cannot be used simultaneously with ELF target format", in validateIFSTarget()
279 IFSTarget TargetFromTriple = parseTriple(*Stub.Target.Triple); in validateIFSTarget()
280 Stub.Target.Arch = TargetFromTriple.Arch; in validateIFSTarget()
281 Stub.Target.BitWidth = TargetFromTriple.BitWidth; in validateIFSTarget()
282 Stub.Target.Endianness = TargetFromTriple.Endianness; in validateIFSTarget()
286 if (!Stub.Target.Arch || !Stub.Target.BitWidth || !Stub.Target.Endianness) { in validateIFSTarget()
288 if (!Stub.Target.Arch) { in validateIFSTarget()
292 if (!Stub.Target.BitWidth) { in validateIFSTarget()
296 if (!Stub.Target.Endianness) { in validateIFSTarget()
331 Stub.Target.Arch.reset(); in stripIFSTarget()
332 Stub.Target.ArchString.reset(); in stripIFSTarget()
335 Stub.Target.Endianness.reset(); in stripIFSTarget()
338 Stub.Target.BitWidth.reset(); in stripIFSTarget()
341 Stub.Target.Triple.reset(); in stripIFSTarget()
343 if (!Stub.Target.Arch && !Stub.Target.BitWidth && !Stub.Target.Endianness) { in stripIFSTarget()
344 Stub.Target.ObjectFormat.reset(); in stripIFSTarget()