forked from OSchip/llvm-project
[Mips] Make tests more tolerant to offsets, symbol sizes etc
No functional changes. llvm-svn: 235035
This commit is contained in:
parent
f5941b8d08
commit
6313038925
|
@ -6,20 +6,20 @@
|
|||
|
||||
# SHARED: Sections:
|
||||
# SHARED: Idx Name Size Address Type
|
||||
# SHARED: 5 .dynamic 00000068 00000000000000d4
|
||||
# SHARED: 5 .dynamic 00000068 00000000[[ADDR:[0-9a-f]+]]
|
||||
|
||||
# SHARED: SYMBOL TABLE:
|
||||
# SHARED: 000000d4 g .dynamic 00000000 _DYNAMIC
|
||||
# SHARED: [[ADDR]] g .dynamic 00000000 _DYNAMIC
|
||||
|
||||
# RUN: lld -flavor gnu -target mipsel -e main -e T0 -o %t.exe %t.o
|
||||
# RUN: llvm-objdump -h -t %t.exe | FileCheck -check-prefix=EXE %s
|
||||
|
||||
# EXE: Sections:
|
||||
# EXE: Idx Name Size Address Type
|
||||
# EXE: 6 .dynamic 00000068 0000000000400114
|
||||
# EXE: 6 .dynamic 00000068 00000000[[ADDR:[0-9a-f]+]]
|
||||
|
||||
# EXE: SYMBOL TABLE:
|
||||
# EXE: 00400114 g .dynamic 00000000 _DYNAMIC
|
||||
# EXE: [[ADDR]] g .dynamic 00000000 _DYNAMIC
|
||||
|
||||
FileHeader:
|
||||
Class: ELFCLASS32
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
# CHECK: Type: SharedObject (0x3)
|
||||
# CHECK: Machine: EM_MIPS (0x8)
|
||||
# CHECK: Version: 1
|
||||
# CHECK: Entry: 0x170
|
||||
# CHECK: Entry: 0x{{[0-9A-F]+}}
|
||||
# CHECK: ProgramHeaderOffset: 0x{{[0-9A-F]+}}
|
||||
# CHECK: SectionHeaderOffset: 0x{{[0-9A-F]+}}
|
||||
# CHECK: Flags [ (0x80000006)
|
||||
|
@ -32,10 +32,10 @@
|
|||
# CHECK: ]
|
||||
# CHECK: HeaderSize: 64
|
||||
# CHECK: ProgramHeaderEntrySize: 56
|
||||
# CHECK: ProgramHeaderCount: 4
|
||||
# CHECK: ProgramHeaderCount: {{[0-9]+}}
|
||||
# CHECK: SectionHeaderEntrySize: 64
|
||||
# CHECK: SectionHeaderCount: 11
|
||||
# CHECK: StringTableSectionIndex: 8
|
||||
# CHECK: SectionHeaderCount: {{[0-9]+}}
|
||||
# CHECK: StringTableSectionIndex: {{[0-9]+}}
|
||||
# CHECK: }
|
||||
|
||||
---
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
# CHECK-NEXT: Type: SharedObject (0x3)
|
||||
# CHECK-NEXT: Machine: EM_MIPS (0x8)
|
||||
# CHECK-NEXT: Version: 1
|
||||
# CHECK-NEXT: Entry: 0x170
|
||||
# CHECK-NEXT: Entry: 0x{{[0-9A-F]+}}
|
||||
# CHECK-NEXT: ProgramHeaderOffset: 0x{{[0-9A-F]+}}
|
||||
# CHECK-NEXT: SectionHeaderOffset: 0x{{[0-9A-F]+}}
|
||||
# CHECK-NEXT: Flags [ (0x82000007)
|
||||
|
@ -34,10 +34,10 @@
|
|||
# CHECK-NEXT: ]
|
||||
# CHECK-NEXT: HeaderSize: 64
|
||||
# CHECK-NEXT: ProgramHeaderEntrySize: 56
|
||||
# CHECK-NEXT: ProgramHeaderCount: 4
|
||||
# CHECK-NEXT: ProgramHeaderCount: {{[0-9]+}}
|
||||
# CHECK-NEXT: SectionHeaderEntrySize: 64
|
||||
# CHECK-NEXT: SectionHeaderCount: 11
|
||||
# CHECK-NEXT: StringTableSectionIndex: 8
|
||||
# CHECK-NEXT: SectionHeaderCount: {{[0-9]+}}
|
||||
# CHECK-NEXT: StringTableSectionIndex: {{[0-9]+}}
|
||||
# CHECK-NEXT:}
|
||||
|
||||
FileHeader:
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
# CHECK-NEXT: Type: SharedObject (0x3)
|
||||
# CHECK-NEXT: Machine: EM_MIPS (0x8)
|
||||
# CHECK-NEXT: Version: 1
|
||||
# CHECK-NEXT: Entry: 0x100
|
||||
# CHECK-NEXT: Entry: 0x{{[0-9A-F]+}}
|
||||
# CHECK-NEXT: ProgramHeaderOffset: 0x{{[0-9A-F]+}}
|
||||
# CHECK-NEXT: SectionHeaderOffset: 0x{{[0-9A-F]+}}
|
||||
# CHECK-NEXT: Flags [ (0x72001007)
|
||||
|
@ -35,10 +35,10 @@
|
|||
# CHECK-NEXT: ]
|
||||
# CHECK-NEXT: HeaderSize: 52
|
||||
# CHECK-NEXT: ProgramHeaderEntrySize: 32
|
||||
# CHECK-NEXT: ProgramHeaderCount: 4
|
||||
# CHECK-NEXT: ProgramHeaderCount: {{[0-9]+}}
|
||||
# CHECK-NEXT: SectionHeaderEntrySize: 40
|
||||
# CHECK-NEXT: SectionHeaderCount: 11
|
||||
# CHECK-NEXT: StringTableSectionIndex: 8
|
||||
# CHECK-NEXT: SectionHeaderCount: {{[0-9]+}}
|
||||
# CHECK-NEXT: StringTableSectionIndex: {{[0-9]+}}
|
||||
# CHECK-NEXT:}
|
||||
|
||||
FileHeader:
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
# CHECK: Type: SharedObject (0x3)
|
||||
# CHECK: Machine: EM_MIPS (0x8)
|
||||
# CHECK: Version: 1
|
||||
# CHECK: Entry: 0x100
|
||||
# CHECK: Entry: 0x{{[0-9A-F]+}}
|
||||
# CHECK: ProgramHeaderOffset: 0x{{[0-9A-F]+}}
|
||||
# CHECK: SectionHeaderOffset: 0x{{[0-9A-F]+}}
|
||||
# CHECK: Flags [ (0x70001007)
|
||||
|
@ -34,10 +34,10 @@
|
|||
# CHECK: ]
|
||||
# CHECK: HeaderSize: 52
|
||||
# CHECK: ProgramHeaderEntrySize: 32
|
||||
# CHECK: ProgramHeaderCount: 4
|
||||
# CHECK: ProgramHeaderCount: {{[0-9]+}}
|
||||
# CHECK: SectionHeaderEntrySize: 40
|
||||
# CHECK: SectionHeaderCount: 11
|
||||
# CHECK: StringTableSectionIndex: 8
|
||||
# CHECK: SectionHeaderCount: {{[0-9]+}}
|
||||
# CHECK: StringTableSectionIndex: {{[0-9]+}}
|
||||
# CHECK:}
|
||||
|
||||
FileHeader:
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
# CHECK-NEXT: }
|
||||
# CHECK-NEXT: ]
|
||||
|
||||
# CHECK: 0x00000003 PLTGOT 0x401000
|
||||
# CHECK: 0x00000003 PLTGOT 0x{{[0-9A-F]+}}
|
||||
# CHECK-NEXT: 0x00000001 NEEDED SharedLibrary (dynsym-table-1.test.tmp-foo.so)
|
||||
# CHECK-NEXT: 0x00000000 NULL 0x0
|
||||
|
||||
|
|
|
@ -40,7 +40,7 @@
|
|||
# CHECK-NEXT: }
|
||||
# CHECK-NEXT: ]
|
||||
|
||||
# CHECK: 0x00000003 PLTGOT 0x1000
|
||||
# CHECK: 0x00000003 PLTGOT 0x{{[0-9A-F]+}}
|
||||
# CHECK-NEXT: 0x00000001 NEEDED SharedLibrary (dynsym-table-2.test.tmp-bar.so)
|
||||
# CHECK-NEXT: 0x00000000 NULL 0x0
|
||||
|
||||
|
|
|
@ -3,8 +3,8 @@
|
|||
# RUN: lld -flavor gnu -target mipsel --noinhibit-exec -o %t.exe %t.o
|
||||
# RUN: llvm-nm %t.exe | FileCheck %s
|
||||
|
||||
# CHECK: U __start
|
||||
# CHECK: 00400108 T main
|
||||
# CHECK: U __start
|
||||
# CHECK: {{[0-9A-F]+}} T main
|
||||
|
||||
FileHeader:
|
||||
Class: ELFCLASS32
|
||||
|
|
|
@ -15,22 +15,22 @@
|
|||
# CHECK: LoadName:
|
||||
# CHECK: DynamicSection [ (18 entries)
|
||||
# CHECK: Tag Type Name/Value
|
||||
# CHECK-NEXT: 0x00000004 HASH 0x400104
|
||||
# CHECK-NEXT: 0x00000005 STRTAB 0x400138
|
||||
# CHECK-NEXT: 0x00000006 SYMTAB 0x400118
|
||||
# CHECK-NEXT: 0x00000004 HASH 0x{{[0-9A-F]+}}
|
||||
# CHECK-NEXT: 0x00000005 STRTAB 0x{{[0-9A-F]+}}
|
||||
# CHECK-NEXT: 0x00000006 SYMTAB 0x{{[0-9A-F]+}}
|
||||
# CHECK-NEXT: 0x0000000A STRSZ 28 (bytes)
|
||||
# CHECK-NEXT: 0x0000000B SYMENT 16 (bytes)
|
||||
# CHECK-NEXT: 0x00000002 PLTRELSZ 8 (bytes)
|
||||
# CHECK-NEXT: 0x70000032 MIPS_PLTGOT 0x402000
|
||||
# CHECK-NEXT: 0x70000032 MIPS_PLTGOT 0x{{[0-9A-F]+}}
|
||||
# CHECK-NEXT: 0x00000014 PLTREL REL
|
||||
# CHECK-NEXT: 0x00000017 JMPREL 0x400154
|
||||
# CHECK-NEXT: 0x00000017 JMPREL 0x{{[0-9A-F]+}}
|
||||
# CHECK-NEXT: 0x70000001 MIPS_RLD_VERSION 1
|
||||
# CHECK-NEXT: 0x70000005 MIPS_FLAGS NOTPOT
|
||||
# CHECK-NEXT: 0x70000006 MIPS_BASE_ADDRESS 0x400000
|
||||
# CHECK-NEXT: 0x7000000A MIPS_LOCAL_GOTNO 2
|
||||
# CHECK-NEXT: 0x70000011 MIPS_SYMTABNO 2
|
||||
# CHECK-NEXT: 0x70000013 MIPS_GOTSYM 0x2
|
||||
# CHECK-NEXT: 0x00000003 PLTGOT 0x401000
|
||||
# CHECK-NEXT: 0x00000003 PLTGOT 0x{{[0-9A-F]+}}
|
||||
# CHECK-NEXT: 0x00000001 NEEDED SharedLibrary (exe-dynamic.test.tmp.so)
|
||||
# CHECK-NEXT: 0x00000000 NULL 0x0
|
||||
# CHECK-NEXT: ]
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
# CHECK: Type: Executable (0x2)
|
||||
# CHECK: Machine: EM_MIPS (0x8)
|
||||
# CHECK: Version: 1
|
||||
# CHECK: Entry: 0x1200001A0
|
||||
# CHECK: Entry: 0x{{[0-9A-F]+}}
|
||||
# CHECK: ProgramHeaderOffset: 0x{{[0-9A-F]+}}
|
||||
# CHECK: SectionHeaderOffset: 0x{{[0-9A-F]+}}
|
||||
# CHECK: Flags [ (0x60000007)
|
||||
|
@ -33,10 +33,10 @@
|
|||
# CHECK: ]
|
||||
# CHECK: HeaderSize: 64
|
||||
# CHECK: ProgramHeaderEntrySize: 56
|
||||
# CHECK: ProgramHeaderCount: 5
|
||||
# CHECK: ProgramHeaderCount: {{[0-9]+}}
|
||||
# CHECK: SectionHeaderEntrySize: 64
|
||||
# CHECK: SectionHeaderCount: 11
|
||||
# CHECK: StringTableSectionIndex: 8
|
||||
# CHECK: SectionHeaderCount: {{[0-9]+}}
|
||||
# CHECK: StringTableSectionIndex: {{[0-9]+}}
|
||||
# CHECK: }
|
||||
|
||||
# o.o
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
# CHECK: Type: Executable (0x2)
|
||||
# CHECK: Machine: EM_MIPS (0x8)
|
||||
# CHECK: Version: 1
|
||||
# CHECK: Entry: 0x400190
|
||||
# CHECK: Entry: 0x{{[0-9A-F]+}}
|
||||
# CHECK: ProgramHeaderOffset: 0x{{[0-9A-F]+}}
|
||||
# CHECK: SectionHeaderOffset: 0x{{[0-9A-F]+}}
|
||||
# CHECK: Flags [ (0x70001005)
|
||||
|
@ -37,10 +37,10 @@
|
|||
# CHECK: ]
|
||||
# CHECK: HeaderSize: 52
|
||||
# CHECK: ProgramHeaderEntrySize: 32
|
||||
# CHECK: ProgramHeaderCount: 6
|
||||
# CHECK: ProgramHeaderCount: {{[0-9]+}}
|
||||
# CHECK: SectionHeaderEntrySize: 40
|
||||
# CHECK: SectionHeaderCount: 14
|
||||
# CHECK: StringTableSectionIndex: 11
|
||||
# CHECK: SectionHeaderCount: {{[0-9]+}}
|
||||
# CHECK: StringTableSectionIndex: {{[0-9]+}}
|
||||
# CHECK: }
|
||||
|
||||
# so.o
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
# RUN: not lld -flavor gnu -target mipsel -e T0 -o %t-exe %t-obj 2>&1 \
|
||||
# RUN: | FileCheck %s
|
||||
|
||||
# CHECK: The jalx target 0x400116 is not word-aligned
|
||||
# CHECK: The jalx target 0x{{[0-9a-f]+}} is not word-aligned
|
||||
|
||||
!ELF
|
||||
FileHeader: !FileHeader
|
||||
|
|
|
@ -21,8 +21,8 @@
|
|||
# SEC-NEXT: EntrySize: 24
|
||||
|
||||
# RAW: Contents of section .reginfo:
|
||||
# RAW-NEXT: 00b4 f0000001 e0000002 d0000003 c0000004
|
||||
# RAW-NEXT: 00c4 b0000005 f08f0000
|
||||
# RAW-NEXT: {{[0-9a-f]+}} f0000001 e0000002 d0000003 c0000004
|
||||
# RAW-NEXT: {{[0-9a-f]+}} b0000005 f08f0000
|
||||
|
||||
# RAW: SYMBOL TABLE:
|
||||
# RAW: 00008ff0 g *ABS* 00000000 _gp
|
||||
|
|
|
@ -5,8 +5,8 @@
|
|||
# RUN: llvm-objdump -s -t %t.so | FileCheck %s
|
||||
|
||||
# CHECK: Contents of section .reginfo:
|
||||
# CHECK-NEXT: 00b4 00000000 00000000 00000000 00000000
|
||||
# CHECK-NEXT: 00c4 00000000 f08f0000
|
||||
# CHECK-NEXT: {{[0-9a-f]+}} 00000000 00000000 00000000 00000000
|
||||
# CHECK-NEXT: {{[0-9a-f]+}} 00000000 f08f0000
|
||||
|
||||
# CHECK: SYMBOL TABLE:
|
||||
# CHECK: 00008ff0 g *ABS* 00000000 _gp
|
||||
|
|
|
@ -8,8 +8,8 @@
|
|||
# RUN: llvm-objdump -s -t %t.exe | FileCheck %s
|
||||
|
||||
# CHECK: Contents of section .reginfo:
|
||||
# CHECK-NEXT: 400104 44444444 44444444 44444444 44444444
|
||||
# CHECK-NEXT: 400114 44444444 f08f4000
|
||||
# CHECK-NEXT: {{[0-9a-f]+}} 44444444 44444444 44444444 44444444
|
||||
# CHECK-NEXT: {{[0-9a-f]+}} 44444444 f08f4000
|
||||
|
||||
# CHECK: SYMBOL TABLE:
|
||||
# CHECK: 00408ff0 g *ABS* 00000000 _gp
|
||||
|
|
|
@ -10,8 +10,8 @@
|
|||
# RUN: llvm-objdump -s -t %t.exe | FileCheck %s
|
||||
|
||||
# CHECK: Contents of section .reginfo:
|
||||
# CHECK-NEXT: 400104 66666666 66666666 66666666 66666666
|
||||
# CHECK-NEXT: 400114 66666666 f08f4000
|
||||
# CHECK-NEXT: {{[0-9a-f]+}} 66666666 66666666 66666666 66666666
|
||||
# CHECK-NEXT: {{[0-9a-f]+}} 66666666 f08f4000
|
||||
|
||||
# CHECK: SYMBOL TABLE:
|
||||
# CHECK: 00408ff0 g *ABS* 00000000 _gp
|
||||
|
|
|
@ -24,8 +24,8 @@
|
|||
# PLT-NEXT: Flags [ (0x2)
|
||||
# PLT-NEXT: SHF_ALLOC (0x2)
|
||||
# PLT-NEXT: ]
|
||||
# PLT-NEXT: Address: 0x400190
|
||||
# PLT-NEXT: Offset: 0x190
|
||||
# PLT-NEXT: Address: 0x{{[0-9A-F]+}}
|
||||
# PLT-NEXT: Offset: 0x{{[0-9A-F]+}}
|
||||
# PLT-NEXT: Size: 24
|
||||
# PLT-NEXT: Link: 3
|
||||
# PLT-NEXT: Info: 0
|
||||
|
@ -40,8 +40,8 @@
|
|||
# PLT-NEXT: SHF_ALLOC (0x2)
|
||||
# PLT-NEXT: SHF_EXECINSTR (0x4)
|
||||
# PLT-NEXT: ]
|
||||
# PLT-NEXT: Address: 0x4001B0
|
||||
# PLT-NEXT: Offset: 0x1B0
|
||||
# PLT-NEXT: Address: 0x{{[0-9A-F]+}}
|
||||
# PLT-NEXT: Offset: 0x{{[0-9A-F]+}}
|
||||
# PLT-NEXT: Size: 80
|
||||
# PLT-NEXT: Link: 0
|
||||
# PLT-NEXT: Info: 0
|
||||
|
@ -51,9 +51,9 @@
|
|||
|
||||
# PLT: Relocations [
|
||||
# PLT-NEXT: Section (5) .rel.plt {
|
||||
# PLT-NEXT: 0x402008 R_MIPS_JUMP_SLOT T1 0x0
|
||||
# PLT-NEXT: 0x40200C R_MIPS_JUMP_SLOT T2 0x0
|
||||
# PLT-NEXT: 0x402010 R_MIPS_JUMP_SLOT T3 0x0
|
||||
# PLT-NEXT: {{[0-9A-F]+}} R_MIPS_JUMP_SLOT T1 0x0
|
||||
# PLT-NEXT: {{[0-9A-F]+}} R_MIPS_JUMP_SLOT T2 0x0
|
||||
# PLT-NEXT: {{[0-9A-F]+}} R_MIPS_JUMP_SLOT T3 0x0
|
||||
# PLT-NEXT: }
|
||||
# PLT-NEXT: ]
|
||||
|
||||
|
@ -69,7 +69,7 @@
|
|||
# PLT-NEXT: }
|
||||
# PLT-NEXT: Symbol {
|
||||
# PLT-NEXT: Name: T1@ (1)
|
||||
# PLT-NEXT: Value: 0x4001D0
|
||||
# PLT-NEXT: Value: 0x{{[0-9A-F]+}}
|
||||
# PLT-NEXT: Size: 0
|
||||
# PLT-NEXT: Binding: Global (0x1)
|
||||
# PLT-NEXT: Type: Function (0x2)
|
||||
|
@ -78,7 +78,7 @@
|
|||
# PLT-NEXT: }
|
||||
# PLT-NEXT: Symbol {
|
||||
# PLT-NEXT: Name: T2@ (4)
|
||||
# PLT-NEXT: Value: 0x4001E0
|
||||
# PLT-NEXT: Value: 0x{{[0-9A-F]+}}
|
||||
# PLT-NEXT: Size: 0
|
||||
# PLT-NEXT: Binding: Global (0x1)
|
||||
# PLT-NEXT: Type: Function (0x2)
|
||||
|
@ -87,7 +87,7 @@
|
|||
# PLT-NEXT: }
|
||||
# PLT-NEXT: Symbol {
|
||||
# PLT-NEXT: Name: T3@ (7)
|
||||
# PLT-NEXT: Value: 0x4001F0
|
||||
# PLT-NEXT: Value: 0x{{[0-9A-F]+}}
|
||||
# PLT-NEXT: Size: 0
|
||||
# PLT-NEXT: Binding: Global (0x1)
|
||||
# PLT-NEXT: Type: Function (0x2)
|
||||
|
|
|
@ -5,22 +5,22 @@
|
|||
# RUN: llvm-objdump -s -t %t.exe | FileCheck %s
|
||||
|
||||
# CHECK: Contents of section .text:
|
||||
# CHECK-NEXT: 400110 01000000 02000000 03000000 00000000
|
||||
# ^
|
||||
# A = 0x10000 - 1 == 0xffff
|
||||
# V = (T1 + 0xffff - T0) >> 16 =>
|
||||
# V => 0x1000b >> 16 = 1
|
||||
# ^
|
||||
# A = 0x20000 - 1 == 0x1ffff
|
||||
# V = (T1 + 0x1ffff - T0 - 4) >> 16 =>
|
||||
# V => 0x20007 >> 16 = 2
|
||||
# ^
|
||||
# A = 0xffff == -1
|
||||
# V = T1 - 1 - T0 - 8 = 3
|
||||
# CHECK-NEXT: {{[0-9A-F]+}} 01000000 02000000 03000000 00000000
|
||||
# ^
|
||||
# A = 0x10000 - 1 == 0xffff
|
||||
# V = (T1 + 0xffff - T0) >> 16 =>
|
||||
# V => 0x1000b >> 16 = 1
|
||||
# ^
|
||||
# A = 0x20000 - 1 == 0x1ffff
|
||||
# V = (T1 + 0x1ffff - T0 - 4) >> 16 =>
|
||||
# V => 0x20007 >> 16 = 2
|
||||
# ^
|
||||
# A = 0xffff == -1
|
||||
# V = T1 - 1 - T0 - 8 = 3
|
||||
|
||||
# CHECK: SYMBOL TABLE:
|
||||
# CHECK: 00400110 g F .text 0000000c T0
|
||||
# CHECK: 0040011c g F .text 00000004 T1
|
||||
# CHECK: {{[0-9a-f]+}} g F .text 0000000c T0
|
||||
# CHECK: {{[0-9a-f]+}} g F .text 00000004 T1
|
||||
|
||||
FileHeader:
|
||||
Class: ELFCLASS32
|
||||
|
|
|
@ -5,15 +5,15 @@
|
|||
# RUN: llvm-objdump -s -t %t.exe | FileCheck %s
|
||||
|
||||
# CHECK: Contents of section .text:
|
||||
# CHECK-NEXT: 400110 00000000 01000000 00000000 00000000
|
||||
# ^ V
|
||||
# A = -1 << 3 = -8 =>
|
||||
# V = (T1 - 8 - (T0|7)^7) >> 3 =>
|
||||
# V => 8 >> 3 = 1
|
||||
# CHECK-NEXT: {{[0-9A-F]+}} 00000000 01000000 00000000 00000000
|
||||
# ^ V
|
||||
# A = -1 << 3 = -8 =>
|
||||
# V = (T1 - 8 - (T0|7)^7) >> 3 =>
|
||||
# V => 8 >> 3 = 1
|
||||
|
||||
# CHECK: SYMBOL TABLE:
|
||||
# CHECK: 00400110 g F .text 00000010 T0
|
||||
# CHECK: 00400120 g F .text 00000004 T1
|
||||
# CHECK: {{[0-9A-F]+}} g F .text 00000010 T0
|
||||
# CHECK: {{[0-9A-F]+}} g F .text 00000004 T1
|
||||
|
||||
FileHeader:
|
||||
Class: ELFCLASS32
|
||||
|
|
|
@ -5,15 +5,15 @@
|
|||
# RUN: llvm-objdump -s -t %t.exe | FileCheck %s
|
||||
|
||||
# CHECK: Contents of section .text:
|
||||
# CHECK-NEXT: 400110 01000000 00000000 00000000
|
||||
# ^ V
|
||||
# A = -1 << 2 = -4 =>
|
||||
# V = (T1 - 4 - T0) >> 2 =>
|
||||
# V => 4 >> 2 = 1
|
||||
# CHECK-NEXT: {{[0-9A-F]+}} 01000000 00000000 00000000
|
||||
# ^ V
|
||||
# A = -1 << 2 = -4 =>
|
||||
# V = (T1 - 4 - T0) >> 2 =>
|
||||
# V => 4 >> 2 = 1
|
||||
|
||||
# CHECK: SYMBOL TABLE:
|
||||
# CHECK: 00400110 g F .text 00000008 T0
|
||||
# CHECK: 00400118 g F .text 00000004 T1
|
||||
# CHECK: {{[0-9A-F]+}} g F .text 00000008 T0
|
||||
# CHECK: {{[0-9A-F]+}} g F .text 00000004 T1
|
||||
|
||||
FileHeader:
|
||||
Class: ELFCLASS32
|
||||
|
|
|
@ -5,15 +5,15 @@
|
|||
# RUN: llvm-objdump -s -t %t.exe | FileCheck %s
|
||||
|
||||
# CHECK: Contents of section .text:
|
||||
# CHECK-NEXT: 400110 01000000 00000000 00000000
|
||||
# ^ V
|
||||
# A = -1 << 2 = -4 =>
|
||||
# V = (T1 - 4 - T0) >> 2 =>
|
||||
# V => 4 >> 2 = 1
|
||||
# CHECK-NEXT: {{[0-9A-F]+}} 01000000 00000000 00000000
|
||||
# ^ V
|
||||
# A = -1 << 2 = -4 =>
|
||||
# V = (T1 - 4 - T0) >> 2 =>
|
||||
# V => 4 >> 2 = 1
|
||||
|
||||
# CHECK: SYMBOL TABLE:
|
||||
# CHECK: 00400110 g F .text 00000008 T0
|
||||
# CHECK: 00400118 g F .text 00000004 T1
|
||||
# CHECK: {{[0-9A-F]+}} g F .text 00000008 T0
|
||||
# CHECK: {{[0-9A-F]+}} g F .text 00000004 T1
|
||||
|
||||
FileHeader:
|
||||
Class: ELFCLASS32
|
||||
|
|
|
@ -5,15 +5,15 @@
|
|||
# RUN: llvm-objdump -s -t %t.exe | FileCheck %s
|
||||
|
||||
# CHECK: Contents of section .text:
|
||||
# CHECK-NEXT: 400110 01000000 00000000 00000000
|
||||
# ^ V
|
||||
# A = -1 << 2 = -4 =>
|
||||
# V = (T1 - 4 - T0) >> 2 =>
|
||||
# V => 4 >> 2 = 1
|
||||
# CHECK-NEXT: {{[0-9A-F]+}} 01000000 00000000 00000000
|
||||
# ^ V
|
||||
# A = -1 << 2 = -4 =>
|
||||
# V = (T1 - 4 - T0) >> 2 =>
|
||||
# V => 4 >> 2 = 1
|
||||
|
||||
# CHECK: SYMBOL TABLE:
|
||||
# CHECK: 00400110 g F .text 00000008 T0
|
||||
# CHECK: 00400118 g F .text 00000004 T1
|
||||
# CHECK: {{[0-9A-F]+}} g F .text 00000008 T0
|
||||
# CHECK: {{[0-9A-F]+}} g F .text 00000004 T1
|
||||
|
||||
FileHeader:
|
||||
Class: ELFCLASS32
|
||||
|
|
|
@ -4,12 +4,12 @@
|
|||
# RUN: llvm-objdump -s -t %t-exe | FileCheck %s
|
||||
|
||||
# CHECK: Contents of section .data:
|
||||
# CHECK-NEXT: 402000 00000000 05000080 fdffff7f ............
|
||||
# ^^ data2 + 0x80000001 - data1
|
||||
# ^^ data1 + 0x80000001 - data2
|
||||
# CHECK-NEXT: {{[0-9A-F]+}} 00000000 05000080 fdffff7f
|
||||
# ^^ data2 + 0x80000001 - data1
|
||||
# ^^ data1 + 0x80000001 - data2
|
||||
# CHECK: SYMBOL TABLE:
|
||||
# CHECK: 00402004 g .data 00000004 data1
|
||||
# CHECK: 00402008 g .data 00000004 data2
|
||||
# CHECK: {{[0-9A-F]+}} g .data 00000004 data1
|
||||
# CHECK: {{[0-9A-F]+}} g .data 00000004 data2
|
||||
|
||||
!ELF
|
||||
FileHeader: !FileHeader
|
||||
|
|
|
@ -6,18 +6,18 @@
|
|||
# RUN: llvm-objdump -s -t %t-exe | FileCheck %s
|
||||
|
||||
# CHECK: Contents of section .text:
|
||||
# CHECK-NEXT: 400110 00000000 80780500 a240fcff 000c03cc .....x...@......
|
||||
# ^^ addiu s1,$pc,20
|
||||
# ^^ bnezc v0,400114 <__start+0x4>
|
||||
# ^^ b 400126 <L1>
|
||||
# CHECK-NEXT: 400120 000c03ad 00000000 00000000 00000000 ................
|
||||
# ^^ bnez v0,40012a <L2>
|
||||
# CHECK-NEXT: {{[0-9A-F]+}} 00000000 80780500 a240fcff 000c03cc
|
||||
# ^^ addiu s1,$pc,20
|
||||
# ^^ bnezc v0,400114 <__start+0x4>
|
||||
# ^^ b 400126 <L1>
|
||||
# CHECK-NEXT: {{[0-9A-F]+}} 000c03ad 00000000 00000000 00000000
|
||||
# ^^ bnez v0,40012a <L2>
|
||||
# CHECK: SYMBOL TABLE:
|
||||
# CHECK: 00400124 l F .text 00000002 L0
|
||||
# CHECK: 00400126 l F .text 00000004 L1
|
||||
# CHECK: 0040012a l F .text 00000004 L2
|
||||
# CHECK: 0040012e l F .text 00000002 L3
|
||||
# CHECK: 00400110 g F .text 00000014 __start
|
||||
# CHECK: {{[0-9a-f]+}} l F .text 00000002 L0
|
||||
# CHECK: {{[0-9a-f]+}} l F .text 00000004 L1
|
||||
# CHECK: {{[0-9a-f]+}} l F .text 00000004 L2
|
||||
# CHECK: {{[0-9a-f]+}} l F .text 00000002 L3
|
||||
# CHECK: {{[0-9a-f]+}} g F .text 00000014 __start
|
||||
|
||||
!ELF
|
||||
FileHeader: !FileHeader
|
||||
|
@ -29,15 +29,15 @@ FileHeader: !FileHeader
|
|||
EF_MIPS_MICROMIPS ]
|
||||
|
||||
Sections:
|
||||
- Name: .text
|
||||
Type: SHT_PROGBITS
|
||||
- Name: .text
|
||||
Type: SHT_PROGBITS
|
||||
# v nop v nop v L0
|
||||
Content: "0000000080780100a240f5ff000cfdcf000c7dad000000000000000000000000"
|
||||
# ^ PC23 ^ PC16 ^ PC10 ^ PC7 ^ L1 ^ L2 ^ L3
|
||||
# 7d << 1 = -6 => L3 + 2 - 6 = L2
|
||||
# 3fd << 1 = -6 => L2 + 2 - 6 = L1
|
||||
# fff5 << 1 = -22 => L1 + 2 - 22 = __start
|
||||
# 1 << 2 = 4 => L0 + 4 - 4 = L0
|
||||
Content: "0000000080780100a240f5ff000cfdcf000c7dad000000000000000000000000"
|
||||
# ^ PC23 ^ PC16 ^ PC10 ^ PC7 ^ L1 ^ L2 ^ L3
|
||||
# 7d << 1 = -6 => L3 + 2 - 6 = L2
|
||||
# 3fd << 1 = -6 => L2 + 2 - 6 = L1
|
||||
# fff5 << 1 = -22 => L1 + 2 - 22 = __start
|
||||
# 1 << 2 = 4 => L0 + 4 - 4 = L0
|
||||
AddressAlign: 16
|
||||
Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
|
||||
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
|
||||
# SO: Symbol {
|
||||
# SO: Name: S0@ (1)
|
||||
# SO-NEXT: Value: 0xEC
|
||||
# SO-NEXT: Value: 0x{{[0-9A-F]+}}
|
||||
# SO-NEXT: Size: 4
|
||||
# SO-NEXT: Binding: Global (0x1)
|
||||
# SO-NEXT: Type: Function (0x2)
|
||||
|
@ -24,7 +24,7 @@
|
|||
|
||||
# SO: Symbol {
|
||||
# SO: Name: S1@ (4)
|
||||
# SO-NEXT: Value: 0xF1
|
||||
# SO-NEXT: Value: 0x{{[0-9A-F]+}}
|
||||
# SO-NEXT: Size: 4
|
||||
# SO-NEXT: Binding: Global (0x1)
|
||||
# SO-NEXT: Type: Function (0x2)
|
||||
|
@ -34,7 +34,7 @@
|
|||
|
||||
# EXE-SYM: Symbol {
|
||||
# EXE-SYM: Name: S0 (1)
|
||||
# EXE-SYM-NEXT: Value: 0x400108
|
||||
# EXE-SYM-NEXT: Value: 0x{{[0-9A-F]+}}
|
||||
# EXE-SYM-NEXT: Size: 4
|
||||
# EXE-SYM-NEXT: Binding: Global (0x1)
|
||||
# EXE-SYM-NEXT: Type: Function (0x2)
|
||||
|
@ -44,7 +44,7 @@
|
|||
|
||||
# EXE-SYM: Symbol {
|
||||
# EXE-SYM: Name: S1 (4)
|
||||
# EXE-SYM-NEXT: Value: 0x40010D
|
||||
# EXE-SYM-NEXT: Value: 0x{{[0-9A-F]+}}
|
||||
# EXE-SYM-NEXT: Size: 4
|
||||
# EXE-SYM-NEXT: Binding: Global (0x1)
|
||||
# EXE-SYM-NEXT: Type: Function (0x2)
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
# RUN: llvm-objdump -s %t.exe | FileCheck %s
|
||||
|
||||
# CHECK: Contents of section .text:
|
||||
# CHECK: 400150 00000000 00000100 00000380 00000480 ................
|
||||
# CHECK: {{[0-9A-F]+}} 00000000 00000100 00000380 00000480
|
||||
|
||||
!ELF
|
||||
FileHeader:
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
# RUN: llvm-objdump -s %t.exe | FileCheck %s
|
||||
|
||||
# CHECK: Contents of section .text:
|
||||
# CHECK: 400150 00000000 01000000 03800000 04800000 ................
|
||||
# CHECK: {{[0-9A-F]+}} 00000000 01000000 03800000 04800000
|
||||
|
||||
!ELF
|
||||
FileHeader:
|
||||
|
|
Loading…
Reference in New Issue