// Common target boilerplate for GlobalISelEmitter tests. def MyTargetISA : InstrInfo; def MyTarget : Target { let InstructionSet = MyTargetISA; } class MyTargetGenericInstruction : GenericInstruction { let Namespace = "MyTarget"; } def R0 : Register<"r0"> { let Namespace = "MyTarget"; } def GPR32 : RegisterClass<"MyTarget", [i32], 32, (add R0)>; def GPR32Op : RegisterOperand; def F0 : Register<"f0"> { let Namespace = "MyTarget"; } def FPR32 : RegisterClass<"MyTarget", [f32], 32, (add F0)>; def FPR32Op : RegisterOperand; def B0 : Register<"b0"> { let Namespace = "MyTarget"; } def GPR8 : RegisterClass<"MyTarget", [i8], 8, (add B0)>; def GPR8Op : RegisterOperand; def V0 : Register<"v0"> { let Namespace = "MyTarget"; } def VecReg128 : RegisterClass<"MyTarget", [v4i32], 128, (add V0)>; def p0 : PtrValueType ; class I Pat> : Instruction { let Namespace = "MyTarget"; let OutOperandList = OOps; let InOperandList = IOps; let Pattern = Pat; }