File tree Expand file tree Collapse file tree 2 files changed +3
-5
lines changed Expand file tree Collapse file tree 2 files changed +3
-5
lines changed Original file line number Diff line number Diff line change @@ -103,8 +103,9 @@ bool WaitInsert::runOnMachineFunction(MachineFunction &MF) {
103
103
104
104
for (MachineBasicBlock &MBB : MF) {
105
105
for (MachineBasicBlock::iterator MI = MBB.begin (); MI != MBB.end (); ++MI) {
106
- // Jump non X87 instruction.
107
- if (!X86::isX87Instruction (*MI))
106
+
107
+ // Jump non X87 instruction and Inline asm.
108
+ if (!X86::isX87Instruction (*MI) || MI->isInlineAsm ())
108
109
continue ;
109
110
// If the instruction instruction neither has float exception nor is
110
111
// a load/store instruction, or the instruction is x87 control
Original file line number Diff line number Diff line change @@ -81,20 +81,17 @@ define double @bar(double %0) #0 {
81
81
; X64-NEXT: #APP
82
82
; X64-NEXT: ldmxcsr 0
83
83
; X64-NEXT: #NO_APP
84
- ; X64-NEXT: wait
85
84
; X64-NEXT: movsd {{.*#+}} xmm2 = [1.0E+0,0.0E+0]
86
85
; X64-NEXT: movapd %xmm2, %xmm3
87
86
; X64-NEXT: divsd %xmm0, %xmm3
88
87
; X64-NEXT: #APP
89
88
; X64-NEXT: ldmxcsr 0
90
89
; X64-NEXT: #NO_APP
91
- ; X64-NEXT: wait
92
90
; X64-NEXT: movapd %xmm2, %xmm1
93
91
; X64-NEXT: divsd %xmm0, %xmm1
94
92
; X64-NEXT: #APP
95
93
; X64-NEXT: ldmxcsr 0
96
94
; X64-NEXT: #NO_APP
97
- ; X64-NEXT: wait
98
95
; X64-NEXT: divsd %xmm0, %xmm2
99
96
; X64-NEXT: movapd %xmm3, %xmm0
100
97
; X64-NEXT: callq fma@PLT
You can’t perform that action at this time.
0 commit comments