llvm.org GIT mirror llvm / 573646d
[X86][MPX] Tag TSX/HLE/SGX instructions scheduler classes Currently tagged these as system instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@320177 91177308-0d34-0410-b5e6-96231b3b80d8 Simon Pilgrim 2 years ago
2 changed file(s) with 7 addition(s) and 0 deletion(s). Raw diff Collapse all Expand all
1414 //===----------------------------------------------------------------------===//
1515 // SGX instructions
1616
17 let SchedRW = [WriteSystem] in {
1718 // ENCLS - Execute an Enclave System Function of Specified Leaf Number
1819 def ENCLS : I<0x01, MRM_CF, (outs), (ins),
1920 "encls", []>, TB;
2122 // ENCLU - Execute an Enclave User Function of Specified Leaf Number
2223 def ENCLU : I<0x01, MRM_D7, (outs), (ins),
2324 "enclu", []>, TB;
25 } // SchedRW
1616
1717 def X86xtest: SDNode<"X86ISD::XTEST", SDTypeProfile<1, 0, [SDTCisVT<0, i32>]>,
1818 [SDNPHasChain, SDNPSideEffect]>;
19
20 let SchedRW = [WriteSystem] in {
1921
2022 let usesCustomInserter = 1 in
2123 def XBEGIN : I<0, Pseudo, (outs GR32:$dst), (ins),
4446 def XABORT : Ii8<0xc6, MRM_F8, (outs), (ins i8imm:$imm),
4547 "xabort\t$imm",
4648 [(int_x86_xabort imm:$imm)]>, Requires<[HasRTM]>;
49 } // SchedRW
4750
4851 // HLE prefixes
52 let SchedRW = [WriteSystem] in {
4953
5054 let isAsmParserOnly = 1 in {
5155 def XACQUIRE_PREFIX : I<0xF2, RawFrm, (outs), (ins), "xacquire", []>;
5256 def XRELEASE_PREFIX : I<0xF3, RawFrm, (outs), (ins), "xrelease", []>;
5357 }
5458
59 } // SchedRW