xref: /llvm-project/llvm/test/CodeGen/X86/asm-dialect.ll (revision bf834b26292e58d86bc289a3eb0c736c400e600a)
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
2; RUN: llc -mtriple=x86_64-unknown-linux-gnu %s -o - \
3; RUN:     | FileCheck --check-prefix=OUTPUT_ATT %s
4; RUN: llc -mtriple=x86_64-unknown-linux-gnu %s -x86-asm-syntax=intel -o - \
5; RUN:     | FileCheck --check-prefix=OUTPUT_INTEL %s
6
7define void @f() {
8; OUTPUT_ATT-LABEL: f:
9; OUTPUT_ATT:       # %bb.0:
10; OUTPUT_ATT-NEXT:    #APP
11; OUTPUT_ATT-NEXT:    movq %rbx, %rax
12; OUTPUT_ATT-NEXT:    #NO_APP
13; OUTPUT_ATT-NEXT:    #APP
14; OUTPUT_ATT-EMPTY:
15; OUTPUT_ATT-NEXT:    movq %rbx, %rax
16; OUTPUT_ATT-EMPTY:
17; OUTPUT_ATT-NEXT:    #NO_APP
18; OUTPUT_ATT-NEXT:    retq
19;
20; OUTPUT_INTEL-LABEL: f:
21; OUTPUT_INTEL:       # %bb.0:
22; OUTPUT_INTEL-NEXT:    #APP
23; OUTPUT_INTEL-NEXT:    mov rax, rbx
24; OUTPUT_INTEL-NEXT:    #NO_APP
25; OUTPUT_INTEL-NEXT:    #APP
26; OUTPUT_INTEL-EMPTY:
27; OUTPUT_INTEL-NEXT:    mov rax, rbx
28; OUTPUT_INTEL-EMPTY:
29; OUTPUT_INTEL-NEXT:    #NO_APP
30; OUTPUT_INTEL-NEXT:    ret
31  call void asm sideeffect "$(movq %rbx, %rax $|mov rax, rbx$)", "~{dirflag},~{fpsr},~{flags}"()
32  call void asm sideeffect inteldialect "$(movq %rbx, %rax $|mov rax, rbx$)", "~{dirflag},~{fpsr},~{flags}"()
33  ret void
34}
35