brintos

brintos / llvm-project-archived public Read only

0
0
Text · 9.3 KiB · b6e3440 Raw
188 lines · plain
1# RUN: llvm-objdump --no-print-imm-hex -d -r %p/../Inputs/trivial-object-test.coff-i386 \2# RUN:              | FileCheck %s -check-prefix COFF-i3863 4# COFF-i386: file format coff-i3865# COFF-i386: Disassembly of section .text:6# COFF-i386:        0:       83 ec 0c                                        subl    $12, %esp7# COFF-i386:        3:       c7 44 24 08 00 00 00 00                         movl    $0, 8(%esp)8# COFF-i386:        b:       c7 04 24 00 00 00 00                            movl    $0, (%esp)9# COFF-i386:                              e: IMAGE_REL_I386_DIR32  L_.str10# COFF-i386:       12:       e8 00 00 00 00                                  calll   011# COFF-i386:                             13: IMAGE_REL_I386_REL32  _puts12# COFF-i386:       17:       e8 00 00 00 00                                  calll   013# COFF-i386:                             18: IMAGE_REL_I386_REL32  _SomeOtherFunction14# COFF-i386:       1c:       8b 44 24 08                                     movl    8(%esp), %eax15# COFF-i386:       20:       83 c4 0c                                        addl    $12, %esp16# COFF-i386:       23:       c3                                              ret17 18# RUN: llvm-objdump --no-print-imm-hex -d -r %p/../Inputs/trivial-object-test.coff-x86-64 \19# RUN:              | FileCheck %s -check-prefix COFF-x86-6420 21# COFF-x86-64: file format coff-x86-6422# COFF-x86-64: Disassembly of section .text:23# COFF-x86-64:        0:       48 83 ec 28                                     subq    $40, %rsp24# COFF-x86-64:        4:       c7 44 24 24 00 00 00 00                         movl    $0, 36(%rsp)25# COFF-x86-64:        c:       48 8d 0d 00 00 00 00                            leaq    (%rip), %rcx26# COFF-x86-64:                               f: IMAGE_REL_AMD64_REL32 L.str27# COFF-x86-64:       13:       e8 00 00 00 00                                  callq   028# COFF-x86-64:                              14: IMAGE_REL_AMD64_REL32 puts29# COFF-x86-64:       18:       e8 00 00 00 00                                  callq   030# COFF-x86-64:                              19: IMAGE_REL_AMD64_REL32 SomeOtherFunction31# COFF-x86-64:       1d:       8b 44 24 24                                     movl    36(%rsp), %eax32# COFF-x86-64:       21:       48 83 c4 28                                     addq    $40, %rsp33# COFF-x86-64:       25:       c3                                              ret34 35# RUN: llvm-objdump --no-print-imm-hex -d -r %p/../Inputs/trivial-object-test.macho-i386 \36# RUN:              | FileCheck %s -check-prefix MACHO-i38637 38# MACHO-i386: file format mach-o 32-bit i38639# MACHO-i386: Disassembly of section __TEXT,__text:40# MACHO-i386: <_main>:41# MACHO-i386:        0:       83 ec 0c                                        subl    $12, %esp42# MACHO-i386:        3:       c7 44 24 08 00 00 00 00                         movl    $0, 8(%esp)43# MACHO-i386:        b:       c7 04 24 24 00 00 00                            movl    $36, (%esp)44# MACHO-i386:                                e: GENERIC_RELOC_VANILLA __cstring45# MACHO-i386:       12:       e8 1f 00 00 00                                  calll   0x3646# MACHO-i386:                               13: GENERIC_RELOC_VANILLA __jump_table47# MACHO-i386:       17:       e8 15 00 00 00                                  calll   0x3148# MACHO-i386:                               18: GENERIC_RELOC_VANILLA __jump_table49# MACHO-i386:       1c:       8b 44 24 08                                     movl    8(%esp), %eax50# MACHO-i386:       20:       83 c4 0c                                        addl    $12, %esp51# MACHO-i386:       23:       c3                                              ret52 53# RUN: llvm-objdump --no-print-imm-hex -d -r %p/../Inputs/trivial-object-test.macho-x86-64 \54# RUN:              | FileCheck %s -check-prefix MACHO-x86-6455 56# MACHO-x86-64: file format mach-o 64-bit x86-6457# MACHO-x86-64: Disassembly of section __TEXT,__text:58# MACHO-x86-64: <_main>:59# MACHO-x86-64:        0:       48 83 ec 08                                     subq    $8, %rsp60# MACHO-x86-64:        4:       c7 44 24 04 00 00 00 00                         movl    $0, 4(%rsp)61# MACHO-x86-64:        c:       48 8d 3d 00 00 00 00                            leaq    (%rip), %rdi62# MACHO-x86-64:                                f: X86_64_RELOC_SIGNED   L_.str63# MACHO-x86-64:       13:       e8 00 00 00 00                                  callq   064# MACHO-x86-64:                               14: X86_64_RELOC_BRANCH   _puts65# MACHO-x86-64:       18:       30 c0                                           xorb    %al, %al66# MACHO-x86-64:       1a:       e8 00 00 00 00                                  callq   067# MACHO-x86-64:                               1b: X86_64_RELOC_BRANCH   _SomeOtherFunction68# MACHO-x86-64:       1f:       8b 44 24 04                                     movl    4(%rsp), %eax69# MACHO-x86-64:       23:       48 83 c4 08                                     addq    $8, %rsp70# MACHO-x86-64:       27:       c3                                              ret71 72# RUN: yaml2obj --docnum=1 %s -o %t.elf-i38673# RUN: llvm-objdump --no-print-imm-hex -d -r %t.elf-i386 | FileCheck %s --check-prefix=ELF-i38674 75# ELF-i386: file format elf32-i38676# ELF-i386: Disassembly of section .text:77# ELF-i386: <main>:78# ELF-i386:        0:     83 ec 0c                                        subl    $12, %esp79# ELF-i386:        3:     c7 44 24 08 00 00 00 00                         movl    $0, 8(%esp)80# ELF-i386:        b:     c7 04 24 00 00 00 00                            movl    $0, (%esp)81# ELF-i386:                              e: R_386_32      .rodata.str1.182# ELF-i386:       12:     e8 fc ff ff ff                                  calll   0x1383# ELF-i386:                             13: R_386_PC32    puts84# ELF-i386:       17:     e8 fc ff ff ff                                  calll   0x1885# ELF-i386:                             18: R_386_PC32    SomeOtherFunction86# ELF-i386:       1c:     8b 44 24 08                                     movl    8(%esp), %eax87# ELF-i386:       20:     83 c4 0c                                        addl    $12, %esp88# ELF-i386:       23:     c3                                              ret89 90--- !ELF91FileHeader:92  Class:   ELFCLASS3293  Data:    ELFDATA2LSB94  Type:    ET_REL95  Machine: EM_38696Sections:97  - Name:    .text98    Type:    SHT_PROGBITS99    Flags:   [ SHF_ALLOC, SHF_EXECINSTR ]100    Content: 83EC0CC744240800000000C7042400000000E8FCFFFFFFE8FCFFFFFF8B44240883C40CC3101  - Name:    .rodata.str1.1102    Type:    SHT_PROGBITS103  - Name:    .rel.text104    Type:    SHT_REL105    Info:    .text106    Relocations:107      - Offset: 0x000000000000000E108        Symbol: .rodata.str1.1109        Type:   R_386_32110      - Offset: 0x0000000000000013111        Symbol: puts112        Type:   R_386_PC32113      - Offset: 0x0000000000000018114        Symbol: SomeOtherFunction115        Type:   R_386_PC32116Symbols:117  - Name:    .rodata.str1.1118    Type:    STT_SECTION119    Section: .rodata.str1.1120  - Name:    main121    Type:    STT_FUNC122    Section: .text123    Binding: STB_GLOBAL124  - Name:    SomeOtherFunction125    Binding: STB_GLOBAL126  - Name:    puts127    Binding: STB_GLOBAL128 129# RUN: yaml2obj --docnum=2 %s -o %t.elf-x86-64130# RUN: llvm-objdump --no-print-imm-hex -d -r %t.elf-x86-64 | FileCheck %s --check-prefix=ELF-x86-64131 132--- !ELF133FileHeader:134  Class:   ELFCLASS64135  Data:    ELFDATA2LSB136  Type:    ET_REL137  Machine: EM_X86_64138Sections:139  - Name:    .text140    Type:    SHT_PROGBITS141    Flags:   [ SHF_ALLOC, SHF_EXECINSTR ]142    Content: 4883EC08C744240400000000BF00000000E80000000030C0E8000000008B4424044883C408C3143  - Name:    .rodata.str1.1144    Type:    SHT_PROGBITS145  - Name:    .rela.text146    Type:    SHT_RELA147    Info:    .text148    Relocations:149      - Offset: 0x000000000000000D150        Symbol: .rodata.str1.1151        Type:   R_X86_64_32S152      - Offset: 0x0000000000000012153        Symbol: puts154        Type:   R_X86_64_PC32155        Addend: -4156      - Offset: 0x0000000000000019157        Symbol: SomeOtherFunction158        Type:   R_X86_64_PC32159        Addend: -4160Symbols:161  - Name:    .rodata.str1.1162    Type:    STT_SECTION163    Section: .rodata.str1.1164  - Name:    main165    Type:    STT_FUNC166    Section: .text167    Binding: STB_GLOBAL168  - Name:    SomeOtherFunction169    Binding: STB_GLOBAL170  - Name:    puts171    Binding: STB_GLOBAL172 173# ELF-x86-64: file format elf64-x86-64174# ELF-x86-64: Disassembly of section .text:175# ELF-x86-64: <main>:176# ELF-x86-64:        0:   48 83 ec 08                                     subq    $8, %rsp177# ELF-x86-64:        4:   c7 44 24 04 00 00 00 00                         movl    $0, 4(%rsp)178# ELF-x86-64:        c:   bf 00 00 00 00                                  movl    $0, %edi179# ELF-x86-64:                            d: R_X86_64_32S  .rodata.str1.1180# ELF-x86-64:       11:   e8 00 00 00 00                                  callq   0181# ELF-x86-64:                           12: R_X86_64_PC32 puts-0x4182# ELF-x86-64:       16:   30 c0                                           xorb    %al, %al183# ELF-x86-64:       18:   e8 00 00 00 00                                  callq   0184# ELF-x86-64:                           19: R_X86_64_PC32 SomeOtherFunction-0x4185# ELF-x86-64:       1d:   8b 44 24 04                                     movl    4(%rsp), %eax186# ELF-x86-64:       21:   48 83 c4 08                                     addq    $8, %rsp187# ELF-x86-64:       25:   c3                                              ret188