Lines Matching defs:Target

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