|
1 | 1 | ; RUN: llc --filetype=obj --mtriple=loongarch64 %s -o %t.o
|
2 | 2 | ; RUN: llvm-readobj -r %t.o | FileCheck %s
|
3 | 3 | ; RUN: llc --filetype=obj --mtriple=loongarch64 --mattr=+relax %s -o %t.r
|
4 |
| -; RUN: llvm-readobj -r %t.r | FileCheck --check-prefixes=CHECK,RELAX %s |
5 |
| - |
6 |
| -;; This test shows the loss of ADD/SUB relocations because relax feature |
7 |
| -;; is not available from SubtargetInfo (LoongArchAsmBackend is instantiated |
8 |
| -;; too early). ie. code generation takes the relax feature from attributes, |
9 |
| -;; but ADD/SUB relocations recording losses the relax feature. |
10 |
| -;; A later commit will fix it. |
| 4 | +; RUN: llvm-readobj -r %t.r | FileCheck %s |
11 | 5 |
|
12 | 6 | ; CHECK: Relocations [
|
13 | 7 | ; CHECK-NEXT: Section ({{.*}}) .rela.text {
|
|
20 | 14 | ; CHECK-NEXT: 0x8 R_LARCH_32 .debug_abbrev 0x0
|
21 | 15 | ; CHECK-NEXT: 0x11 R_LARCH_32 .L0 0x0
|
22 | 16 | ; CHECK-NEXT: 0x15 R_LARCH_32 .Lline_table_start0 0x0
|
23 |
| -; RELAX-NEXT: 0x1B R_LARCH_ADD32 .L0 0x0 |
24 |
| -; RELAX-NEXT: 0x1B R_LARCH_SUB32 .L0 0x0 |
| 17 | +; CHECK-NEXT: 0x1B R_LARCH_ADD32 .L0 0x0 |
| 18 | +; CHECK-NEXT: 0x1B R_LARCH_SUB32 .L0 0x0 |
25 | 19 | ; CHECK-NEXT: 0x1F R_LARCH_32 .L0 0x0
|
26 |
| -; RELAX-NEXT: 0x25 R_LARCH_ADD32 .L0 0x0 |
27 |
| -; RELAX-NEXT: 0x25 R_LARCH_SUB32 .L0 0x0 |
| 20 | +; CHECK-NEXT: 0x25 R_LARCH_ADD32 .L0 0x0 |
| 21 | +; CHECK-NEXT: 0x25 R_LARCH_SUB32 .L0 0x0 |
28 | 22 | ; CHECK-NEXT: }
|
29 | 23 | ; CHECK: Section ({{.*}}) .rela.debug_frame {
|
30 | 24 | ; CHECK-NEXT: 0x1C R_LARCH_32 .L0 0x0
|
31 | 25 | ; CHECK-NEXT: 0x20 R_LARCH_64 .L0 0x0
|
32 |
| -; RELAX-NEXT: 0x28 R_LARCH_ADD64 .L0 0x0 |
33 |
| -; RELAX-NEXT: 0x28 R_LARCH_SUB64 .L0 0x0 |
| 26 | +; CHECK-NEXT: 0x28 R_LARCH_ADD64 .L0 0x0 |
| 27 | +; CHECK-NEXT: 0x28 R_LARCH_SUB64 .L0 0x0 |
34 | 28 | ; CHECK-NEXT: 0x3F R_LARCH_ADD6 .L0 0x0
|
35 | 29 | ; CHECK-NEXT: 0x3F R_LARCH_SUB6 .L0 0x0
|
36 | 30 | ; CHECK-NEXT: }
|
|
39 | 33 | ; CHECK-NEXT: 0x31 R_LARCH_32 .debug_line_str 0x2
|
40 | 34 | ; CHECK-NEXT: 0x46 R_LARCH_32 .debug_line_str 0x9
|
41 | 35 | ; CHECK-NEXT: 0x4F R_LARCH_64 .L0 0x0
|
42 |
| -; RELAX-NEXT: 0x5F R_LARCH_ADD16 .L0 0x0 |
43 |
| -; RELAX-NEXT: 0x5F R_LARCH_SUB16 .L0 0x0 |
| 36 | +; CHECK-NEXT: 0x5F R_LARCH_ADD16 .L0 0x0 |
| 37 | +; CHECK-NEXT: 0x5F R_LARCH_SUB16 .L0 0x0 |
44 | 38 | ; CHECK-NEXT: }
|
45 | 39 | ; CHECK-NEXT: ]
|
46 | 40 |
|
|
0 commit comments