brintos

brintos / llvm-project-archived public Read only

0
0
Text · 3.9 KiB · 219f147 Raw
135 lines · plain
1// RUN: llvm-mc -filetype=obj -triple x86_64-pc-linux-gnu %s -o - | llvm-readobj -h -S -r --symbols - | FileCheck %s2 3        .text4	.globl	main5	.align	16, 0x906	.type	main,@function7main:                                   # @main8# %bb.0:9	subq	$8, %rsp10	movl	$.L.str1, %edi11	callq	puts12	movl	$.L.str2, %edi13	callq	puts14	xorl	%eax, %eax15	addq	$8, %rsp16    call foo@GOTPCREL17    ja foo18    jae foo19    jb foo20    jbe foo21    jc foo22    je foo23    jz foo24    jg foo25    jge foo26    jl foo27    jle foo28    jna foo29    jnae foo30    jnb foo31    jnbe foo32    jnc foo33    jne foo34    jng foo35    jnge foo36    jnl foo37    jnle foo38    jno foo39    jnp foo40    jns foo41    jnz foo42    jo foo43    jp foo44    jpe foo45    jpo foo46    js foo47    jz foo48	ret49.Ltmp0:50	.size	main, .Ltmp0-main51 52	.type	.L.str1,@object         # @.str153	.section	.rodata.str1.1,"aMS",@progbits,154.L.str1:55	.asciz	 "Hello"56	.size	.L.str1, 657 58	.type	.L.str2,@object         # @.str259.L.str2:60	.asciz	 "World!"61	.size	.L.str2, 762 63	.section	.note.GNU-stack,"",@progbits64 65// CHECK: ElfHeader {66// CHECK:   Class: 64-bit67// CHECK:   DataEncoding: LittleEndian68// CHECK:   FileVersion: 169// CHECK: }70// CHECK: Sections [71// CHECK:   Section {72// CHECK:     Index: 073// CHECK:     Name: (0)74 75// CHECK:     Name: .text76 77// CHECK:     Name: .rela.text78 79// CHECK:      Relocations [80// CHECK:        Section {{.*}} .rela.text {81// CHECK-NEXT:     0x5  R_X86_64_32   .rodata.str1.1 0x082// CHECK-NEXT:     0xA  R_X86_64_PLT32 puts           0xFFFFFFFFFFFFFFFC83// CHECK-NEXT:     0xF  R_X86_64_32   .rodata.str1.1 0x684// CHECK-NEXT:     0x14 R_X86_64_PLT32 puts           0xFFFFFFFFFFFFFFFC85// CHECK-NEXT:     0x1F R_X86_64_GOTPCREL foo 0xFFFFFFFFFFFFFFFC86// CHECK-NEXT:     0x25 R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC87// CHECK-NEXT:     0x2B R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC88// CHECK-NEXT:     0x31 R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC89// CHECK-NEXT:     0x37 R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC90// CHECK-NEXT:     0x3D R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC91// CHECK-NEXT:     0x43 R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC92// CHECK-NEXT:     0x49 R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC93// CHECK-NEXT:     0x4F R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC94// CHECK-NEXT:     0x55 R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC95// CHECK-NEXT:     0x5B R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC96// CHECK-NEXT:     0x61 R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC97// CHECK-NEXT:     0x67 R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC98// CHECK-NEXT:     0x6D R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC99// CHECK-NEXT:     0x73 R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC100// CHECK-NEXT:     0x79 R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC101// CHECK-NEXT:     0x7F R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC102// CHECK-NEXT:     0x85 R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC103// CHECK-NEXT:     0x8B R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC104// CHECK-NEXT:     0x91 R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC105// CHECK-NEXT:     0x97 R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC106// CHECK-NEXT:     0x9D R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC107// CHECK-NEXT:     0xA3 R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC108// CHECK-NEXT:     0xA9 R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC109// CHECK-NEXT:     0xAF R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC110// CHECK-NEXT:     0xB5 R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC111// CHECK-NEXT:     0xBB R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC112// CHECK-NEXT:     0xC1 R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC113// CHECK-NEXT:     0xC7 R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC114// CHECK-NEXT:     0xCD R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC115// CHECK-NEXT:     0xD3 R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC116// CHECK-NEXT:     0xD9 R_X86_64_PLT32 foo 0xFFFFFFFFFFFFFFFC117// CHECK-NEXT:   }118// CHECK-NEXT: ]119 120// CHECK:   Symbol {121// CHECK:     Binding: Local122// CHECK:     Type: Section123 124// CHECK:   Symbol {125// CHECK:     Name: main126// CHECK:     Binding: Global127// CHECK:     Type: Function128// CHECK:  }129 130// CHECK:   Symbol {131// CHECK:     Name: puts132// CHECK:     Binding: Global133// CHECK:     Type: None134// CHECK:  }135