xref: /llvm-project/llvm/test/CodeGen/X86/x86-interrupt_vzeroupper.ll (revision 2f448bf509432c1a19ec46ab8cbc7353c03c6280)
1; RUN: llc -verify-machineinstrs -mtriple=x86_64-unknown-unknown -mattr=+avx < %s | FileCheck %s
2
3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
4;; Checks that interrupt handler code does not call "vzeroupper" instruction
5;; before iret.
6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
7
8; CHECK: vzeroupper
9; CHECK-NEXT: call
10; CHECK-NOT: vzeroupper
11; CHECK: iret
12
13define x86_intrcc void @foo(ptr byval(i8) %frame) {
14  call void @bar()
15  ret void
16}
17
18declare void @bar()
19
20