brintos

brintos / llvm-project-archived public Read only

0
0
Text · 8.3 KiB · 3f1ecaa Raw
317 lines · plain
1// RUN: llvm-mc -triple i386-apple-darwin9 %s -filetype=obj -o - | llvm-readobj --file-headers -S -r --symbols --macho-segment --macho-dysymtab --macho-indirect-symbols - | FileCheck %s2 3// FIXME: We are missing a lot of diagnostics on this kind of stuff which the4// assembler has.5        6        .lazy_symbol_pointer7        .indirect_symbol sym_lsp_B8        .long 09        10        .globl sym_lsp_A11        .indirect_symbol sym_lsp_A12        .long 013        14sym_lsp_C:      15        .indirect_symbol sym_lsp_C16        .long 017 18// FIXME: Enable this test once missing llvm-mc support is in place.19.if 020        .indirect_symbol sym_lsp_D21        .long sym_lsp_D22.endif23 24        .indirect_symbol sym_lsp_E25        .long 0xFA26 27// FIXME: Enable this test once missing llvm-mc support is in place.28.if 029sym_lsp_F = 1030        .indirect_symbol sym_lsp_F31        .long 032.endif33 34        .globl sym_lsp_G35sym_lsp_G:36        .indirect_symbol sym_lsp_G37        .long 038        39        .non_lazy_symbol_pointer40        .indirect_symbol sym_nlp_B41        .long 042 43        .globl sym_nlp_A44        .indirect_symbol sym_nlp_A45        .long 046 47sym_nlp_C:      48        .indirect_symbol sym_nlp_C49        .long 050 51// FIXME: Enable this test once missing llvm-mc support is in place.52.if 053        .indirect_symbol sym_nlp_D54        .long sym_nlp_D55.endif56 57        .indirect_symbol sym_nlp_E58        .long 0xAF59 60// FIXME: Enable this test once missing llvm-mc support is in place.61.if 062sym_nlp_F = 1063        .indirect_symbol sym_nlp_F64        .long 065.endif66 67        .globl sym_nlp_G68sym_nlp_G:69        .indirect_symbol sym_nlp_G70        .long 071 72// CHECK: File: <stdin>73// CHECK: Format: Mach-O 32-bit i38674// CHECK: Arch: i38675// CHECK: AddressSize: 32bit76// CHECK: MachHeader {77// CHECK:   Magic: Magic (0xFEEDFACE)78// CHECK:   CpuType: X86 (0x7)79// CHECK:   CpuSubType: CPU_SUBTYPE_I386_ALL (0x3)80// CHECK:   FileType: Relocatable (0x1)81// CHECK:   NumOfLoadCommands: 482// CHECK:   SizeOfLoadCommands: 38083// CHECK:   Flags [ (0x0)84// CHECK:   ]85// CHECK: }86// CHECK: Sections [87// CHECK:   Section {88// CHECK:     Index: 089// CHECK:     Name: __text (5F 5F 74 65 78 74 00 00 00 00 00 00 00 00 00 00)90// CHECK:     Segment: __TEXT (5F 5F 54 45 58 54 00 00 00 00 00 00 00 00 00 00)91// CHECK:     Address: 0x092// CHECK:     Size: 0x093// CHECK:     Offset: 40894// CHECK:     Alignment: 095// CHECK:     RelocationOffset: 0x096// CHECK:     RelocationCount: 097// CHECK:     Type: Regular (0x0)98// CHECK:     Attributes [ (0x800000)99// CHECK:       PureInstructions (0x800000)100// CHECK:     ]101// CHECK:     Reserved1: 0x0102// CHECK:     Reserved2: 0x0103// CHECK:   }104// CHECK:   Section {105// CHECK:     Index: 1106// CHECK:     Name: __la_symbol_ptr (5F 5F 6C 61 5F 73 79 6D 62 6F 6C 5F 70 74 72 00)107// CHECK:     Segment: __DATA (5F 5F 44 41 54 41 00 00 00 00 00 00 00 00 00 00)108// CHECK:     Address: 0x0109// CHECK:     Size: 0x14110// CHECK:     Offset: 408111// CHECK:     Alignment: 2112// CHECK:     RelocationOffset: 0x0113// CHECK:     RelocationCount: 0114// CHECK:     Type: LazySymbolPointers (0x7)115// CHECK:     Attributes [ (0x0)116// CHECK:     ]117// CHECK:     Reserved1: 0x0118// CHECK:     Reserved2: 0x0119// CHECK:   }120// CHECK:   Section {121// CHECK:     Index: 2122// CHECK:     Name: __nl_symbol_ptr (5F 5F 6E 6C 5F 73 79 6D 62 6F 6C 5F 70 74 72 00)123// CHECK:     Segment: __DATA (5F 5F 44 41 54 41 00 00 00 00 00 00 00 00 00 00)124// CHECK:     Address: 0x14125// CHECK:     Size: 0x14126// CHECK:     Offset: 428127// CHECK:     Alignment: 2128// CHECK:     RelocationOffset: 0x0129// CHECK:     RelocationCount: 0130// CHECK:     Type: NonLazySymbolPointers (0x6)131// CHECK:     Attributes [ (0x0)132// CHECK:     ]133// CHECK:     Reserved1: 0x5134// CHECK:     Reserved2: 0x0135// CHECK:   }136// CHECK: ]137// CHECK: Relocations [138// CHECK: ]139// CHECK: Symbols [140// CHECK:   Symbol {141// CHECK:     Name: sym_lsp_C (41)142// CHECK:     Type: Section (0xE)143// CHECK:     Section: __la_symbol_ptr (0x2)144// CHECK:     RefType: UndefinedNonLazy (0x0)145// CHECK:     Flags [ (0x0)146// CHECK:     ]147// CHECK:     Value: 0x8148// CHECK:   }149// CHECK:   Symbol {150// CHECK:     Name: sym_nlp_C (51)151// CHECK:     Type: Section (0xE)152// CHECK:     Section: __nl_symbol_ptr (0x3)153// CHECK:     RefType: UndefinedNonLazy (0x0)154// CHECK:     Flags [ (0x0)155// CHECK:     ]156// CHECK:     Value: 0x1C157// CHECK:   }158// CHECK:   Symbol {159// CHECK:     Name: sym_lsp_G (1)160// CHECK:     Extern161// CHECK:     Type: Section (0xE)162// CHECK:     Section: __la_symbol_ptr (0x2)163// CHECK:     RefType: UndefinedNonLazy (0x0)164// CHECK:     Flags [ (0x0)165// CHECK:     ]166// CHECK:     Value: 0x10167// CHECK:   }168// CHECK:   Symbol {169// CHECK:     Name: sym_nlp_G (11)170// CHECK:     Extern171// CHECK:     Type: Section (0xE)172// CHECK:     Section: __nl_symbol_ptr (0x3)173// CHECK:     RefType: UndefinedNonLazy (0x0)174// CHECK:     Flags [ (0x0)175// CHECK:     ]176// CHECK:     Value: 0x24177// CHECK:   }178// CHECK:   Symbol {179// CHECK:     Name: sym_lsp_A (81)180// CHECK:     Extern181// CHECK:     Type: Undef (0x0)182// CHECK:     Section:  (0x0)183// CHECK:     RefType: UndefinedNonLazy (0x0)184// CHECK:     Flags [ (0x0)185// CHECK:     ]186// CHECK:     Value: 0x0187// CHECK:   }188// CHECK:   Symbol {189// CHECK:     Name: sym_lsp_B (61)190// CHECK:     Extern191// CHECK:     Type: Undef (0x0)192// CHECK:     Section:  (0x0)193// CHECK:     RefType: ReferenceFlagUndefinedLazy (0x1)194// CHECK:     Flags [ (0x0)195// CHECK:     ]196// CHECK:     Value: 0x0197// CHECK:   }198// CHECK:   Symbol {199// CHECK:     Name: sym_lsp_E (21)200// CHECK:     Extern201// CHECK:     Type: Undef (0x0)202// CHECK:     Section:  (0x0)203// CHECK:     RefType: ReferenceFlagUndefinedLazy (0x1)204// CHECK:     Flags [ (0x0)205// CHECK:     ]206// CHECK:     Value: 0x0207// CHECK:   }208// CHECK:   Symbol {209// CHECK:     Name: sym_nlp_A (91)210// CHECK:     Extern211// CHECK:     Type: Undef (0x0)212// CHECK:     Section:  (0x0)213// CHECK:     RefType: UndefinedNonLazy (0x0)214// CHECK:     Flags [ (0x0)215// CHECK:     ]216// CHECK:     Value: 0x0217// CHECK:   }218// CHECK:   Symbol {219// CHECK:     Name: sym_nlp_B (71)220// CHECK:     Extern221// CHECK:     Type: Undef (0x0)222// CHECK:     Section:  (0x0)223// CHECK:     RefType: UndefinedNonLazy (0x0)224// CHECK:     Flags [ (0x0)225// CHECK:     ]226// CHECK:     Value: 0x0227// CHECK:   }228// CHECK:   Symbol {229// CHECK:     Name: sym_nlp_E (31)230// CHECK:     Extern231// CHECK:     Type: Undef (0x0)232// CHECK:     Section:  (0x0)233// CHECK:     RefType: UndefinedNonLazy (0x0)234// CHECK:     Flags [ (0x0)235// CHECK:     ]236// CHECK:     Value: 0x0237// CHECK:   }238// CHECK: ]239// CHECK: Indirect Symbols {240// CHECK:   Number: 10241// CHECK:   Symbols [242// CHECK:     Entry {243// CHECK:       Entry Index: 0244// CHECK:       Symbol Index: 0x5245// CHECK:     }246// CHECK:     Entry {247// CHECK:       Entry Index: 1248// CHECK:       Symbol Index: 0x4249// CHECK:     }250// CHECK:     Entry {251// CHECK:       Entry Index: 2252// CHECK:       Symbol Index: 0x0253// CHECK:     }254// CHECK:     Entry {255// CHECK:       Entry Index: 3256// CHECK:       Symbol Index: 0x6257// CHECK:     }258// CHECK:     Entry {259// CHECK:       Entry Index: 4260// CHECK:       Symbol Index: 0x2261// CHECK:     }262// CHECK:     Entry {263// CHECK:       Entry Index: 5264// CHECK:       Symbol Index: 0x8265// CHECK:     }266// CHECK:     Entry {267// CHECK:       Entry Index: 6268// CHECK:       Symbol Index: 0x7269// CHECK:     }270// CHECK:     Entry {271// CHECK:       Entry Index: 7272// CHECK:       Symbol Index: 0x80000000273// CHECK:     }274// CHECK:     Entry {275// CHECK:       Entry Index: 8276// CHECK:       Symbol Index: 0x9277// CHECK:     }278// CHECK:     Entry {279// CHECK:       Entry Index: 9280// CHECK:       Symbol Index: 0x3281// CHECK:     }282// CHECK:   ]283// CHECK: }284// CHECK: Segment {285// CHECK:   Cmd: LC_SEGMENT286// CHECK:   Name: 287// CHECK:   Size: 260288// CHECK:   vmaddr: 0x0289// CHECK:   vmsize: 0x28290// CHECK:   fileoff: 408291// CHECK:   filesize: 40292// CHECK:   maxprot: rwx293// CHECK:   initprot: rwx294// CHECK:   nsects: 3295// CHECK:   flags: 0x0296// CHECK: }297// CHECK: Dysymtab {298// CHECK:   ilocalsym: 0299// CHECK:   nlocalsym: 2300// CHECK:   iextdefsym: 2301// CHECK:   nextdefsym: 2302// CHECK:   iundefsym: 4303// CHECK:   nundefsym: 6304// CHECK:   tocoff: 0305// CHECK:   ntoc: 0306// CHECK:   modtaboff: 0307// CHECK:   nmodtab: 0308// CHECK:   extrefsymoff: 0309// CHECK:   nextrefsyms: 0310// CHECK:   indirectsymoff: 448311// CHECK:   nindirectsyms: 10312// CHECK:   extreloff: 0313// CHECK:   nextrel: 0314// CHECK:   locreloff: 0315// CHECK:   nlocrel: 0316// CHECK: }317