1 /// Check that functions with internal relocations are considered
"simple" and
2 /// get transformed by BOLT. The tests rely on the
"remove-nops" optimization
:
3 /// if nops got removed from the function
, it got transformed by BOLT.
5 // RUN
: llvm-mc
-triple riscv64
-filetype
=obj
-o
%t.o
%s
6 // RUN
: ld.lld
--emit-relocs
-o
%t %t.o
7 // RUN
: llvm-bolt
-o
%t.bolt
%t
8 // RUN
: llvm-objdump
-d
%t.bolt | FileCheck
%s
14 // CHECK-NEXT
: j
0x
{{.*}} <_start>
19 .size _start, .-_start
24 // CHECK-NEXT
: auipc a0
, [[#]]
25 // CHECK-NEXT
: addi a0
, a0
, [[#]]
29 /// Same as
"la a0, g" but more explicit
30 auipc a0
, %pcrel_hi
(g
)
31 addi a0
, a0
, %pcrel_lo
(1b)