73 lines · plain
1# RUN: llvm-mc -filetype=obj -triple riscv32 -mattr=-relax %s -o %t.o2# RUN: llvm-readelf -sr %t.o | FileCheck %s --check-prefixes=CHECK,NORELAX3# RUN: llvm-dwarfdump --debug-frame %t.o 2>&1 \4# RUN: | FileCheck -check-prefix=CHECK-DWARFDUMP %s5# RUN: llvm-mc -filetype=obj -triple riscv32 -mattr=+relax %s -o %t.relax.o6# RUN: llvm-readelf -sr %t.relax.o | FileCheck %s --check-prefixes=CHECK,RELAX7 8# NORELAX: Relocation section '.rela.text1' at offset {{.*}} contains 1 entries:9# NORELAX-NEXT: Offset Info Type Sym. Value Symbol's Name + Addend10# NORELAX-NEXT: 00000000 00000313 R_RISCV_CALL_PLT 00000008 .L0 + 011# NORELAX-EMPTY:12# RELAX: Relocation section '.rela.text1' at offset {{.*}} contains 2 entries:13# RELAX: R_RISCV_CALL_PLT14# RELAX-NEXT: R_RISCV_RELAX15# RELAX-EMPTY:16# NORELAX-NEXT: Relocation section '.rela.eh_frame' at offset {{.*}} contains 1 entries:17# NORELAX: Offset Info Type Sym. Value Symbol's Name + Addend18# NORELAX-NEXT: 0000001c 00000139 R_RISCV_32_PCREL 00000000 .L0 + 019# RELAX-NEXT: Relocation section '.rela.eh_frame' at offset {{.*}} contains 7 entries:20# RELAX: Offset Info Type Sym. Value Symbol's Name + Addend21# RELAX-NEXT: 0000001c 00000139 R_RISCV_32_PCREL 00000000 .L0 + 022# RELAX-NEXT: 00000020 00000d23 R_RISCV_ADD32 0001017c .L0 + 023# RELAX-NEXT: 00000020 00000127 R_RISCV_SUB32 00000000 .L0 + 024# RELAX-NEXT: 00000026 00000536 R_RISCV_SET8 00000068 .L0 + 025# RELAX-NEXT: 00000026 00000125 R_RISCV_SUB8 00000000 .L0 + 026# RELAX-NEXT: 00000035 00000c35 R_RISCV_SET6 00010178 .L0 + 027# RELAX-NEXT: 00000035 00000a34 R_RISCV_SUB6 0001016e .L0 + 028# CHECK-EMPTY:29# NORELAX: Symbol table '.symtab' contains 14 entries:30# RELAX: Symbol table '.symtab' contains 18 entries:31# RELAX-NEXT: Num: Value Size Type Bind Vis Ndx Name32# RELAX-NEXT: 0: 00000000 0 NOTYPE LOCAL DEFAULT UND33# RELAX-NEXT: 1: 00000000 0 NOTYPE LOCAL DEFAULT 2 .L0 {{$}}34# RELAX: 3: 00000008 0 NOTYPE LOCAL DEFAULT 2 .L0{{$}}35# RELAX: 10: 0001016e 0 NOTYPE LOCAL DEFAULT 2 .L0 {{$}}36# RELAX: 12: 00010178 0 NOTYPE LOCAL DEFAULT 2 .L0 {{$}}37# RELAX: 13: 0001017c 0 NOTYPE LOCAL DEFAULT 2 .L0 {{$}}38 39# CHECK-DWARFDUMP: DW_CFA_advance_loc1: 10440# CHECK-DWARFDUMP-NEXT: DW_CFA_def_cfa_offset: +841# CHECK-DWARFDUMP-NEXT: DW_CFA_advance_loc2: 25942# CHECK-DWARFDUMP-NEXT: DW_CFA_def_cfa_offset: +843# CHECK-DWARFDUMP-NEXT: DW_CFA_advance_loc4: 6553944# CHECK-DWARFDUMP-NEXT: DW_CFA_def_cfa_offset: +845# CHECK-DWARFDUMP-NEXT: DW_CFA_advance_loc: 1046# CHECK-DWARFDUMP-NEXT: DW_CFA_def_cfa_offset: +847 .text48 .globl test # -- Begin function test49 .p2align 150 .type test,@function51test:52 .cfi_startproc53 call foo54## This looks similar to fake label names ".L0 ". Even if this is ".L0 ",55## the assembler will not conflate it with fake labels.56.L0:57 .zero 96, 0x9058 .cfi_def_cfa_offset 859 nop60 .zero 255, 0x9061 .cfi_def_cfa_offset 862 nop63 .zero 65535, 0x9064 .cfi_def_cfa_offset 865 nop66 .p2align 367 .cfi_def_cfa_offset 868 nop69 .cfi_endproc70 71.section .text1,"ax"72call .L073