xref: /llvm-project/llvm/test/CodeGen/PowerPC/asm-dialect.ll (revision 7c80f98b69a6a9ad027a3f4bfda073958141d977)
1; RUN: llc -verify-machineinstrs < %s -mtriple=powerpc-unknown-linux-gnu | FileCheck %s
2; RUN: llc -verify-machineinstrs < %s -mtriple=powerpc64-unknown-linux-gnu | FileCheck %s
3; RUN: llc -verify-machineinstrs < %s -mtriple=powerpc-unknown-linux-gnu | FileCheck %s
4; RUN: llc -verify-machineinstrs < %s -mtriple=powerpc64-unknown-linux-gnu | FileCheck %s
5
6; This test verifies that we choose "assembler variant 1" (which GCC
7; uses for "new-style mnemonics" as opposed to POWER mnemonics) when
8; processing multi-variant inline asm statements, on all subtargets.
9
10; CHECK: subfe
11; CHECK-NOT: sfe
12
13define i32 @test(i32 %in1, i32 %in2) {
14entry:
15  %0 = tail call i32 asm "$(sfe$|subfe$) $0,$1,$2", "=r,r,r"(i32 %in1, i32 %in2)
16  ret i32 %0
17}
18
19