brintos

brintos / llvm-project-archived public Read only

0
0
Text · 3.9 KiB · 95a73e5 Raw
130 lines · plain
1# RUN: llvm-mc -triple=x86_64-pc-win32 -filetype=obj < %s | llvm-readobj --codeview - | FileCheck %s2 3# This tries to test defrange gap edge cases.4 5# CHECK:         LocalSym {6# CHECK:           Type: int (0x74)7# CHECK:           VarName: p8# CHECK:         }9# CHECK-NOT:     LocalSym {10# CHECK:         DefRangeRegisterSym {11# CHECK-NEXT:      Kind: S_DEFRANGE_REGISTER (0x1141)12# CHECK-NEXT:      Register: ESI (0x17)13# CHECK-NEXT:      MayHaveNoName: 014# CHECK-NEXT:      LocalVariableAddrRange {15# CHECK-NEXT:        OffsetStart: .text+0x516# CHECK-NEXT:        ISectStart: 0x017# CHECK-NEXT:        Range: 0x518# CHECK-NEXT:      }19# CHECK-NEXT:      LocalVariableAddrGap [20# CHECK-NEXT:        GapStartOffset: 0x321# CHECK-NEXT:        Range: 0x122# CHECK-NEXT:      ]23# CHECK-NEXT:    }24# CHECK-NEXT:    DefRangeRegisterSym {25# CHECK-NEXT:      Kind: S_DEFRANGE_REGISTER (0x1141)26# CHECK-NEXT:      Register: ESI (0x17)27# CHECK-NEXT:      MayHaveNoName: 028# CHECK-NEXT:      LocalVariableAddrRange {29# CHECK-NEXT:        OffsetStart: .text+0x1001530# CHECK-NEXT:        ISectStart: 0x031# CHECK-NEXT:        Range: 0x632# CHECK-NEXT:      }33# CHECK-NEXT:    }34# CHECK-NEXT:    DefRangeRegisterSym {35# CHECK-NEXT:      Kind: S_DEFRANGE_REGISTER (0x1141)36# CHECK-NEXT:      Register: ESI (0x17)37# CHECK-NEXT:      MayHaveNoName: 038# CHECK-NEXT:      LocalVariableAddrRange {39# CHECK-NEXT:        OffsetStart: .text+0x2001B40# CHECK-NEXT:        ISectStart: 0x041# CHECK-NEXT:        Range: 0x142# CHECK-NEXT:      }43# CHECK-NEXT:    }44# CHECK-NEXT:    DefRangeRegisterSym {45# CHECK-NEXT:      Kind: S_DEFRANGE_REGISTER (0x1141)46# CHECK-NEXT:      Register: ESI (0x17)47# CHECK-NEXT:      MayHaveNoName: 048# CHECK-NEXT:      LocalVariableAddrRange {49# CHECK-NEXT:        OffsetStart: .text+0x2001C50# CHECK-NEXT:        ISectStart: 0x051# CHECK-NEXT:        Range: 0xF00052# CHECK-NEXT:      }53# CHECK-NEXT:      LocalVariableAddrGap [54# CHECK-NEXT:        GapStartOffset: 0x155# CHECK-NEXT:        Range: 0xEFFE56# CHECK-NEXT:      ]57# CHECK-NEXT:    }58 59	.text60f:                                      # @f61	mov $42, %esi62.Lbegin0:63	nop64	jmp .Lbegin165.Lend0:66	nop67.Lbegin1:68	nop69.Lend1:70	.p2align	471	.fill 0x10000, 1, 0x9072 73	mov $42, %esi74.Lbegin2:75	nop76	jmp .Lbegin377.Lend2:78	.fill 0x10000, 1, 0x9079.Lbegin3:80	nop81.Lend3:82 83	# Create a range that is exactly 0xF000 bytes long with a gap in the84	# middle.85.Lbegin4:86	nop87.Lend4:88	.fill 0xeffe, 1, 0x9089.Lbegin5:90	nop91.Lend5:92	ret93.Lfunc_end0:94 95	.section	.debug$S,"dr"96	.p2align	297	.long	4                       # Debug section magic98	.long	241                     # Symbol subsection for f99	.long	.Ltmp15-.Ltmp14         # Subsection size100.Ltmp14:101	.short	.Ltmp17-.Ltmp16         # Record length102.Ltmp16:103	.short	4423                    # Record kind: S_GPROC32_ID104	.long	0                       # PtrParent105	.long	0                       # PtrEnd106	.long	0                       # PtrNext107	.long	.Lfunc_end0-f           # Code size108	.long	0                       # Offset after prologue109	.long	0                       # Offset before epilogue110	.long	4098                    # Function type index111	.secrel32	f               # Function section relative address112	.secidx	f                       # Function section index113	.byte	0                       # Flags114	.asciz	"f"                     # Function name115.Ltmp17:116	.short	.Ltmp19-.Ltmp18         # Record length117.Ltmp18:118	.short	4414                    # Record kind: S_LOCAL119	.long	116                     # TypeIndex120	.short	0                       # Flags121	.asciz	"p"122.Ltmp19:123	.cv_def_range	 .Lbegin0 .Lend0 .Lbegin1 .Lend1 .Lbegin2 .Lend2 .Lbegin3 .Lend3, reg, 23124	.cv_def_range	 .Lbegin4 .Lend4 .Lbegin5 .Lend5, reg, 23125	.short	2                       # Record length126	.short	4431                    # Record kind: S_PROC_ID_END127.Ltmp15:128        .cv_filechecksums               # File index to string table offset subsection129        .cv_stringtable                 # String table130