brintos

brintos / llvm-project-archived public Read only

0
0
Text · 7.8 KiB · 1f753a2 Raw
214 lines · plain
1// clang-format off2// REQUIRES: lld, x863 4// Test block range is set.5// RUN: llvm-mc -triple=x86_64-windows-msvc --filetype=obj %s > %t.obj6// RUN: lld-link /debug:full /nodefaultlib /entry:main %t.obj /out:%t.exe /base:0x1400000007// RUN: %lldb %t.exe -o "image lookup -a 0x140001014 -v" -o "exit" | FileCheck %s8 9// CHECK:      Function: id = {{.*}}, name = "main", range = [0x0000000140001000-0x0000000140001044)10// CHECK-NEXT: FuncType: id = {{.*}}, byte-size = 0, compiler_type = "int (void)"11// CHECK-NEXT:   Blocks: id = {{.*}}, range = [0x140001000-0x140001044)12// CHECK-NEXT:           id = {{.*}}, range = [0x140001014-0x14000103b)13 14 15	.text16	.def	@feat.00;17	.scl	3;18	.type	0;19	.endef20	.globl	@feat.0021.set @feat.00, 022	.intel_syntax noprefix23	.file	"blocks.cpp"24	.def	main;25	.scl	2;26	.type	32;27	.endef28	.globl	main                            # -- Begin function main29	.p2align	4, 0x9030main:                                   # @main31.Lfunc_begin0:32	.cv_func_id 033	.cv_file	1 "/tmp/blocks.cpp" "4CC0785E17ACF09C657F740775661395" 134	.cv_loc	0 1 1 0                         # blocks.cpp:1:035.seh_proc main36# %bb.0:                                # %entry37	sub	rsp, 1638	.seh_stackalloc 1639	.seh_endprologue40	mov	dword ptr [rsp + 12], 041.Ltmp0:42	.cv_loc	0 1 2 0                         # blocks.cpp:2:043	mov	dword ptr [rsp + 8], 044.Ltmp1:45	.cv_loc	0 1 3 0                         # blocks.cpp:3:046	mov	dword ptr [rsp + 4], 047.LBB0_1:                                # %for.cond48                                        # =>This Inner Loop Header: Depth=149	cmp	dword ptr [rsp + 4], 350	jge	.LBB0_451# %bb.2:                                # %for.body52                                        #   in Loop: Header=BB0_1 Depth=153.Ltmp2:54	.cv_loc	0 1 4 0                         # blocks.cpp:4:055	mov	eax, dword ptr [rsp + 8]56	add	eax, 157	mov	dword ptr [rsp + 8], eax58.Ltmp3:59# %bb.3:                                # %for.inc60                                        #   in Loop: Header=BB0_1 Depth=161	.cv_loc	0 1 3 0                         # blocks.cpp:3:062	mov	eax, dword ptr [rsp + 4]63	add	eax, 164	mov	dword ptr [rsp + 4], eax65	jmp	.LBB0_166.Ltmp4:67.LBB0_4:                                # %for.end68	.cv_loc	0 1 6 0                         # blocks.cpp:6:069	mov	eax, dword ptr [rsp + 8]70	add	rsp, 1671	ret72.Ltmp5:73.Lfunc_end0:74	.seh_endproc75                                        # -- End function76	.section	.drectve,"yn"77	.ascii	" /DEFAULTLIB:libcmt.lib"78	.ascii	" /DEFAULTLIB:oldnames.lib"79	.section	.debug$S,"dr"80	.p2align	2, 0x081	.long	4                               # Debug section magic82	.long	24183	.long	.Ltmp7-.Ltmp6                   # Subsection size84.Ltmp6:85	.short	.Ltmp9-.Ltmp8                   # Record length86.Ltmp8:87	.short	4353                            # Record kind: S_OBJNAME88	.long	0                               # Signature89	.asciz	"/tmp/blocks.obj"               # Object name90	.p2align	2, 0x091.Ltmp9:92	.short	.Ltmp11-.Ltmp10                 # Record length93.Ltmp10:94	.short	4412                            # Record kind: S_COMPILE395	.long	1                               # Flags and language96	.short	208                             # CPUType97	.short	16                              # Frontend version98	.short	099	.short	0100	.short	0101	.short	16000                           # Backend version102	.short	0103	.short	0104	.short	0105	.asciz	"clang version 16.0.0"          # Null-terminated compiler version string106	.p2align	2, 0x0107.Ltmp11:108.Ltmp7:109	.p2align	2, 0x0110	.long	241                             # Symbol subsection for main111	.long	.Ltmp13-.Ltmp12                 # Subsection size112.Ltmp12:113	.short	.Ltmp15-.Ltmp14                 # Record length114.Ltmp14:115	.short	4423                            # Record kind: S_GPROC32_ID116	.long	0                               # PtrParent117	.long	0                               # PtrEnd118	.long	0                               # PtrNext119	.long	.Lfunc_end0-main                # Code size120	.long	0                               # Offset after prologue121	.long	0                               # Offset before epilogue122	.long	4098                            # Function type index123	.secrel32	main                    # Function section relative address124	.secidx	main                            # Function section index125	.byte	0                               # Flags126	.asciz	"main"                          # Function name127	.p2align	2, 0x0128.Ltmp15:129	.short	.Ltmp17-.Ltmp16                 # Record length130.Ltmp16:131	.short	4114                            # Record kind: S_FRAMEPROC132	.long	16                              # FrameSize133	.long	0                               # Padding134	.long	0                               # Offset of padding135	.long	0                               # Bytes of callee saved registers136	.long	0                               # Exception handler offset137	.short	0                               # Exception handler section138	.long	81920                           # Flags (defines frame register)139	.p2align	2, 0x0140.Ltmp17:141	.short	.Ltmp19-.Ltmp18                 # Record length142.Ltmp18:143	.short	4414                            # Record kind: S_LOCAL144	.long	116                             # TypeIndex145	.short	0                               # Flags146	.asciz	"count"147	.p2align	2, 0x0148.Ltmp19:149	.cv_def_range	 .Ltmp0 .Ltmp5, frame_ptr_rel, 8150	.short	.Ltmp21-.Ltmp20                 # Record length151.Ltmp20:152	.short	4355                            # Record kind: S_BLOCK32153	.long	0                               # PtrParent154	.long	0                               # PtrEnd155	.long	.Ltmp4-.Ltmp1                   # Code size156	.secrel32	.Ltmp1                  # Function section relative address157	.secidx	.Lfunc_begin0                   # Function section index158	.byte	0                               # Lexical block name159	.p2align	2, 0x0160.Ltmp21:161	.short	.Ltmp23-.Ltmp22                 # Record length162.Ltmp22:163	.short	4414                            # Record kind: S_LOCAL164	.long	116                             # TypeIndex165	.short	0                               # Flags166	.asciz	"i"167	.p2align	2, 0x0168.Ltmp23:169	.cv_def_range	 .Ltmp1 .Ltmp4, frame_ptr_rel, 4170	.short	2                               # Record length171	.short	6                               # Record kind: S_END172	.short	2                               # Record length173	.short	4431                            # Record kind: S_PROC_ID_END174.Ltmp13:175	.p2align	2, 0x0176	.cv_linetable	0, main, .Lfunc_end0177	.cv_filechecksums                       # File index to string table offset subsection178	.cv_stringtable                         # String table179	.long	241180	.long	.Ltmp25-.Ltmp24                 # Subsection size181.Ltmp24:182	.short	.Ltmp27-.Ltmp26                 # Record length183.Ltmp26:184	.short	4428                            # Record kind: S_BUILDINFO185	.long	4104                            # LF_BUILDINFO index186	.p2align	2, 0x0187.Ltmp27:188.Ltmp25:189	.p2align	2, 0x0190	.section	.debug$T,"dr"191	.p2align	2, 0x0192	.long	4                               # Debug section magic193	# ArgList (0x1000)194	.short	0x6                             # Record length195	.short	0x1201                          # Record kind: LF_ARGLIST196	.long	0x0                             # NumArgs197	# Procedure (0x1001)198	.short	0xe                             # Record length199	.short	0x1008                          # Record kind: LF_PROCEDURE200	.long	0x74                            # ReturnType: int201	.byte	0x0                             # CallingConvention: NearC202	.byte	0x0                             # FunctionOptions203	.short	0x0                             # NumParameters204	.long	0x1000                          # ArgListType: ()205	# FuncId (0x1002)206	.short	0x12                            # Record length207	.short	0x1601                          # Record kind: LF_FUNC_ID208	.long	0x0                             # ParentScope209	.long	0x1001                          # FunctionType: int ()210	.asciz	"main"                          # Name211	.byte	243212	.byte	242213	.byte	241214