brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.5 KiB · e9f2631 Raw
70 lines · plain
1# RUN: llvm-mc -triple=i686-windows-msvc %s -filetype=obj -o %t.obj2# RUN: llvm-readobj --codeview %t.obj | FileCheck %s3 4# The .cv_string directive mainly exists as a convenience for manually writing5# FPO data in assembler. Test that we can write FPO data using this directive,6# and that the string comes out in the dumper.7 8# void g(int);9# void f(int x) {10#   g(x+1);11# }12 13# CHECK: FrameFunc [14# CHECK-NEXT: abc =15# CHECK-NEXT: def =16# CHECK-NEXT: ghi =17# CHECK-NEXT: ]18 19	.text20	.def	 @feat.00;21	.scl	3;22	.type	0;23	.endef24	.globl	@feat.0025.set @feat.00, 126	.def	 _f;27	.scl	2;28	.type	32;29	.endef30	.globl	_f                      # -- Begin function f31	.p2align	4, 0x9032_f:                                     # @f33Lfunc_begin0:34# %bb.0:                                # %entry35	pushl	%ebp36	movl	%esp, %ebp37	subl	$8, %esp38	movl	8(%ebp), %eax39	movl	8(%ebp), %ecx40	addl	$1, %ecx41	movl	%ecx, (%esp)42	movl	%eax, -4(%ebp)          # 4-byte Spill43	calll	_g44	addl	$8, %esp45	popl	%ebp46	retl47Lfunc_end0:48                                        # -- End function49	.section	.debug$S,"dr"50	.p2align	251	.long	4                       # Debug section magic52 53	# Open coded frame data54	.long	24555	.long	Lfoo_fpo_end-Lfoo_fpo_begin           # Subsection size56Lfoo_fpo_begin:57	.long _f58	.long 059	.long Lfunc_end0-Lfunc_begin060	.long 24 # LocalSize61	.long 0 # ParamSize62	.long 0 # MaxStackSize63	.cv_string "abc = def = ghi = "64	.short 0 # PrologSize65	.short 0 # SavedRegSize66	.long 0x4 # Flags67Lfoo_fpo_end:68	.p2align	269	.cv_stringtable                 # String table70