brintos

brintos / llvm-project-archived public Read only

0
0
Text · 4.2 KiB · 085dfaf Raw
137 lines · plain
1// This test checks that the COFF object emitter works for the most basic2// programs.3 4// RUN: llvm-mc -filetype=obj -triple x86_64-pc-win32 %s | llvm-readobj -h -S --sr --sd --symbols - | FileCheck %s5 6.def	 _main;7	.scl	2;8	.type	32;9	.endef10	.text11	.globl	_main12	.align	16, 0x9013_main:                                  # @main14# %bb.0:                                # %entry15	subl	$4, %esp16	movl	$.L_.str, (%esp)17	call	_printf18	xorl	%eax, %eax19	addl	$4, %esp20	ret21 22	.data23.L_.str:                                # @.str24	.asciz	"Hello World"25 26// CHECK: ImageFileHeader {27// CHECK:   Machine: IMAGE_FILE_MACHINE_AMD6428// CHECK:   SectionCount: 329// CHECK:   TimeDateStamp: {{[0-9]+}}30// CHECK:   PointerToSymbolTable: 0x{{[0-9A-F]+}}31// CHECK:   SymbolCount: 832// CHECK:   OptionalHeaderSize: 033// CHECK:   Characteristics [ (0x0)34// CHECK:   ]35// CHECK: }36// CHECK: Sections [37// CHECK:   Section {38// CHECK:     Number:               [[TextNum:[0-9]+]]39// CHECK:     Name:                 .text40// CHECK:     VirtualSize:          041// CHECK:     VirtualAddress:       042// CHECK:     RawDataSize:          [[TextSize:[0-9]+]]43// CHECK:     PointerToRawData:     0x{{[0-9A-F]+}}44// CHECK:     PointerToRelocations: 0x{{[0-9A-F]+}}45// CHECK:     PointerToLineNumbers: 0x046// CHECK:     RelocationCount:      247// CHECK:     LineNumberCount:      048// CHECK:     Characteristics [ (0x60500020)49// CHECK:       IMAGE_SCN_ALIGN_16BYTES50// CHECK:       IMAGE_SCN_CNT_CODE51// CHECK:       IMAGE_SCN_MEM_EXECUTE52// CHECK:       IMAGE_SCN_MEM_READ53// CHECK:     ]54// CHECK:     Relocations [55// CHECK:       0x{{[0-9A-F]+}} IMAGE_REL_AMD64_ADDR32 .data56// CHECK:       0x{{[0-9A-F]+}} IMAGE_REL_AMD64_REL32 _printf57// CHECK:     ]58// CHECK:   }59// CHECK:   Section {60// CHECK:     Number:               [[DataNum:[0-9]+]]61// CHECK:     Name:                 .data62// CHECK:     VirtualSize:          063// CHECK:     VirtualAddress:       064// CHECK:     RawDataSize:          [[DataSize:[0-9]+]]65// CHECK:     PointerToRawData:     0x{{[0-9A-F]+}}66// CHECK:     PointerToRelocations: 0x067// CHECK:     PointerToLineNumbers: 0x068// CHECK:     RelocationCount:      069// CHECK:     LineNumberCount:      070// CHECK:     Characteristics [ (0xC0300040)71// CHECK:       IMAGE_SCN_ALIGN_4BYTES72// CHECK:       IMAGE_SCN_CNT_INITIALIZED_DATA73// CHECK:       IMAGE_SCN_MEM_READ74// CHECK:       IMAGE_SCN_MEM_WRITE75// CHECK:     ]76// CHECK:     Relocations [77// CHECK:     ]78// CHECK:     SectionData (79// CHECK:       0000: 48656C6C 6F20576F 726C6400             |Hello World.|80// CHECK:     )81// CHECK:   }82// CHECK: ]83// CHECK: Symbols [84// CHECK:   Symbol {85// CHECK:     Name:           .text86// CHECK:     Value:          087// CHECK:     Section:        .text88// CHECK:     BaseType:       Null89// CHECK:     ComplexType:    Null90// CHECK:     StorageClass:   Static91// CHECK:     AuxSymbolCount: 192// CHECK:     AuxSectionDef {93// CHECK:       Length: [[TextSize]]94// CHECK:       RelocationCount: 295// CHECK:       LineNumberCount: 096// CHECK:       Checksum: 0x8E1B6D2097// CHECK:       Number: [[TextNum]]98// CHECK:       Selection: 0x099// CHECK:     }100// CHECK:   }101// CHECK:   Symbol {102// CHECK:     Name:           .data103// CHECK:     Value:          0104// CHECK:     Section:        .data105// CHECK:     BaseType:       Null106// CHECK:     ComplexType:    Null107// CHECK:     StorageClass:   Static108// CHECK:     AuxSymbolCount: 1109// CHECK:     AuxSectionDef {110// CHECK:       Length: [[DataSize]]111// CHECK:       RelocationCount: 0112// CHECK:       LineNumberCount: 0113// CHECK:       Checksum: 0x2B95CA92114// CHECK:       Number: [[DataNum]]115// CHECK:       Selection: 0x0116// CHECK:     }117// CHECK:   }118// CHECK:   Symbol {119// CHECK:     Name:           _main120// CHECK:     Value:          0121// CHECK:     Section:        .text122// CHECK:     BaseType:       Null123// CHECK:     ComplexType:    Function124// CHECK:     StorageClass:   External125// CHECK:     AuxSymbolCount: 0126// CHECK:   }127// CHECK:   Symbol {128// CHECK:     Name:           _printf129// CHECK:     Value:          0130// CHECK:     Section:        IMAGE_SYM_UNDEFINED (0)131// CHECK:     BaseType:       Null132// CHECK:     ComplexType:    Null133// CHECK:     StorageClass:   External134// CHECK:     AuxSymbolCount: 0135// CHECK:   }136// CHECK: ]137