Lines Matching defs:Reg

74 Matcher<MCOperand> IsReg(unsigned Reg) {
76 Property(&MCOperand::getReg, Eq(Reg)));
83 Matcher<MCInst> IsMovImmediate(unsigned Opcode, int64_t Reg, int64_t Value) {
84 return AllOf(OpcodeIs(Opcode), ElementsAre(IsReg(Reg), IsImm(Value)));
100 Matcher<MCInst> IsMovValueFromStack(unsigned Opcode, unsigned Reg) {
102 ElementsAre(IsReg(Reg), IsReg(X86::RSP), IsImm(1), IsReg(0),
120 std::vector<MCInst> setRegTo(unsigned Reg, const APInt &Value) {
121 return State.getExegesisTarget().setRegTo(State.getSubtargetInfo(), Reg,
165 const unsigned Reg = X86::EFLAGS;
166 EXPECT_THAT(setRegTo(Reg, APInt(64, 0x1111222233334444ULL)),
175 const unsigned Reg = X86::AL;
176 EXPECT_THAT(setRegTo(Reg, APInt(8, Value)),
177 ElementsAre(IsMovImmediate(X86::MOV8ri, Reg, Value)));
182 const unsigned Reg = X86::BX;
183 EXPECT_THAT(setRegTo(Reg, APInt(16, Value)),
184 ElementsAre(IsMovImmediate(X86::MOV16ri, Reg, Value)));
189 const unsigned Reg = X86::ECX;
190 EXPECT_THAT(setRegTo(Reg, APInt(32, Value)),
191 ElementsAre(IsMovImmediate(X86::MOV32ri, Reg, Value)));
196 const unsigned Reg = X86::RDX;
197 EXPECT_THAT(setRegTo(Reg, APInt(64, Value)),
198 ElementsAre(IsMovImmediate(X86::MOV64ri, Reg, Value)));
343 const unsigned Reg = X86::K0;
345 EXPECT_THAT(setRegTo(Reg, APInt(RegBitWidth, Value)),
348 IsMovValueFromStack(X86::KMOVWkm, Reg),
354 const unsigned Reg = X86::K0;
356 EXPECT_THAT(setRegTo(Reg, APInt(RegBitWidth, Value)),
359 IsMovValueFromStack(X86::KMOVWkm, Reg),
365 const unsigned Reg = X86::K0;
367 EXPECT_THAT(setRegTo(Reg, APInt(RegBitWidth, Value)),
370 IsMovValueFromStack(X86::KMOVWkm, Reg),
376 const unsigned Reg = X86::K0;
378 EXPECT_THAT(setRegTo(Reg, APInt(RegBitWidth, Value)),
381 IsMovValueFromStack(X86::KMOVWkm, Reg),
387 const unsigned Reg = X86::K0;
390 setRegTo(Reg, APInt(RegBitWidth, Value)),
395 IsMovValueFromStack(X86::KMOVWkm, Reg),
401 const unsigned Reg = X86::K0;
403 EXPECT_THAT(setRegTo(Reg, APInt(RegBitWidth, Value)),
406 IsMovValueFromStack(X86::KMOVBkm, Reg),
412 const unsigned Reg = X86::K0;
415 setRegTo(Reg, APInt(RegBitWidth, Value)),
420 IsMovValueFromStack(X86::KMOVWkm, Reg),
426 const unsigned Reg = X86::K0;
428 EXPECT_THAT(setRegTo(Reg, APInt(RegBitWidth, Value)),
431 IsMovValueFromStack(X86::KMOVBkm, Reg),
437 const unsigned Reg = X86::K0;
439 EXPECT_THAT(setRegTo(Reg, APInt(RegBitWidth, Value)), IsEmpty());
444 const unsigned Reg = X86::K0;
446 EXPECT_THAT(setRegTo(Reg, APInt(RegBitWidth, Value)), IsEmpty());
451 const unsigned Reg = X86::K0;
453 EXPECT_THAT(setRegTo(Reg, APInt(RegBitWidth, Value)),
456 IsMovValueFromStack(X86::KMOVDkm, Reg),
462 const unsigned Reg = X86::K0;
464 EXPECT_THAT(setRegTo(Reg, APInt(RegBitWidth, Value)),
467 IsMovValueFromStack(X86::KMOVDkm, Reg),
473 const unsigned Reg = X86::K0;
475 EXPECT_THAT(setRegTo(Reg, APInt(RegBitWidth, Value)), IsEmpty());
480 const unsigned Reg = X86::K0;
482 EXPECT_THAT(setRegTo(Reg, APInt(RegBitWidth, Value)), IsEmpty());
487 const unsigned Reg = X86::K0;
489 EXPECT_THAT(setRegTo(Reg, APInt(RegBitWidth, Value)),
493 IsMovValueFromStack(X86::KMOVQkm, Reg),
499 const unsigned Reg = X86::K0;
501 EXPECT_THAT(setRegTo(Reg, APInt(RegBitWidth, Value)),
505 IsMovValueFromStack(X86::KMOVQkm, Reg),