]> granicus.if.org Git - llvm/commitdiff
[X86] Tag missing EH pseudo instruction scheduler classes
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Sat, 9 Dec 2017 20:04:02 +0000 (20:04 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Sat, 9 Dec 2017 20:04:02 +0000 (20:04 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@320262 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/X86InstrCompiler.td
lib/Target/X86/X86InstrInfo.td

index a5b04c968dad6927392e37a99f3ee3137d5c32ad..60c8db4478f414efc1315fb298766dba061227c4 100644 (file)
@@ -218,17 +218,17 @@ let hasSideEffects = 1, isBarrier = 1, isCodeGenOnly = 1,
                           Requires<[In64BitMode]>;
   }
 }
-} // SchedRW
 
 let isBranch = 1, isTerminator = 1, isCodeGenOnly = 1 in {
   def EH_SjLj_Setup : I<0, Pseudo, (outs), (ins brtarget:$dst),
                         "#EH_SjLj_Setup\t$dst", []>;
 }
+} // SchedRW
 
 //===----------------------------------------------------------------------===//
 // Pseudo instructions used by unwind info.
 //
-let isPseudo = 1 in {
+let isPseudo = 1, SchedRW = [WriteSystem] in {
   def SEH_PushReg : I<0, Pseudo, (outs), (ins i32imm:$reg),
                             "#SEH_PushReg $reg", []>;
   def SEH_SaveReg : I<0, Pseudo, (outs), (ins i32imm:$reg, i32imm:$dst),
index aeebe6d44ecaeaf083ded447145a8770d5c17d4f..3e4c3b9e28729ecf4a2a72e379043a1b3f25146d 100644 (file)
@@ -1155,7 +1155,8 @@ def LEAVE64  : I<0xC9, RawFrm,
 //  Miscellaneous Instructions.
 //
 
-let isBarrier = 1, hasSideEffects = 1, usesCustomInserter = 1 in
+let isBarrier = 1, hasSideEffects = 1, usesCustomInserter = 1,
+    SchedRW = [WriteSystem] in
   def Int_eh_sjlj_setup_dispatch
     : PseudoI<(outs), (ins), [(X86eh_sjlj_setup_dispatch)]>;