xref: /llvm-project/llvm/test/CodeGen/RISCV/option-norvc.ll (revision ecd6d7254e6452bd4663a473f46bd13bcf2bfeec)
1bca0c3cdSAlex Bradbury; RUN: llc -mtriple=riscv32 -mattr=+c  -filetype=obj < %s\
2*ecd6d725SFangrui Song; RUN: | llvm-objdump --triple=riscv32 --mattr=+c -d -M no-aliases -\
3bca0c3cdSAlex Bradbury; RUN: | FileCheck -check-prefix=CHECK %s
4bca0c3cdSAlex Bradbury
5bca0c3cdSAlex Bradbury; This test demonstrates that .option norvc has no effect on codegen when
6bca0c3cdSAlex Bradbury; emitting an ELF directly.
7bca0c3cdSAlex Bradbury
8bca0c3cdSAlex Bradburydefine i32 @add(i32 %a, i32 %b) nounwind {
971e2ca6eSFangrui Song; CHECK-LABEL: <add>:
10bca0c3cdSAlex Bradbury; CHECK:    c.add a0, a1
11bca0c3cdSAlex Bradbury; CHECK-NEXT:    c.jr ra
12bca0c3cdSAlex Bradbury  tail call void asm sideeffect ".option norvc", ""()
13bca0c3cdSAlex Bradbury  %add = add nsw i32 %b, %a
14bca0c3cdSAlex Bradbury  ret i32 %add
15bca0c3cdSAlex Bradbury}
16