Alex Bradbury | bca0c3c | 2018-05-11 17:30:28 +0000 | [diff] [blame] | 1 | ; RUN: llc -mtriple=riscv32 -mattr=+c -filetype=obj < %s\ |
Fangrui Song | ecd6d72 | 2020-03-15 16:17:52 -0700 | [diff] [blame^] | 2 | ; RUN: | llvm-objdump --triple=riscv32 --mattr=+c -d -M no-aliases -\ |
Alex Bradbury | bca0c3c | 2018-05-11 17:30:28 +0000 | [diff] [blame] | 3 | ; RUN: | FileCheck -check-prefix=CHECK %s |
| 4 | |
| 5 | ; This test demonstrates that .option norvc has no effect on codegen when |
| 6 | ; emitting an ELF directly. |
| 7 | |
| 8 | define i32 @add(i32 %a, i32 %b) nounwind { |
Fangrui Song | 71e2ca6 | 2020-03-05 14:18:38 -0800 | [diff] [blame] | 9 | ; CHECK-LABEL: <add>: |
Alex Bradbury | bca0c3c | 2018-05-11 17:30:28 +0000 | [diff] [blame] | 10 | ; CHECK: c.add a0, a1 |
| 11 | ; CHECK-NEXT: c.jr ra |
| 12 | tail call void asm sideeffect ".option norvc", ""() |
| 13 | %add = add nsw i32 %b, %a |
| 14 | ret i32 %add |
| 15 | } |