# RUN: llvm-mc -filetype=asm < %s -triple i686-windows-msvc | FileCheck %s --check-prefix=ASM
# RUN: llvm-mc -filetype=obj < %s -triple i686-windows-msvc | llvm-readobj --codeview | FileCheck %s --check-prefix=OBJ

.globl _foo
_foo:
	.cv_fpo_proc _foo 4
	pushl	%ebp
	.cv_fpo_pushreg ebp # Test without %
	pushl	%ebx
	.cv_fpo_pushreg %ebx
	pushl	%edi
	.cv_fpo_pushreg %edi
	pushl	%esi
	.cv_fpo_pushreg esi
	subl $20, %esp
	.cv_fpo_stackalloc 20
	.cv_fpo_endprologue

	# ASM: .cv_fpo_proc _foo 4
	# ASM: pushl	%ebp
	# ASM: .cv_fpo_pushreg %ebp
	# ASM: pushl	%ebx
	# ASM: .cv_fpo_pushreg %ebx
	# ASM: pushl	%edi
	# ASM: .cv_fpo_pushreg %edi
	# ASM: pushl	%esi
	# ASM: .cv_fpo_pushreg %esi
	# ASM: subl $20, %esp
	# ASM: .cv_fpo_stackalloc 20
	# ASM: .cv_fpo_endprologue

	# Clobbers
	xorl %ebp, %ebp
	xorl %ebx, %ebx
	xorl %edi, %edi
	xorl %esi, %esi
	# Use that stack memory
	leal 4(%esp), %eax
	movl %eax, (%esp)
	calll _bar

	# ASM: calll _bar

	# Epilogue
	# FIXME: Get FPO data for this once we get it for DWARF.
	addl $20, %esp
	popl %esi
	popl %edi
	popl %ebx
	popl %ebp
	retl
	.cv_fpo_endproc

	# ASM: .cv_fpo_endproc

	.section	.debug$S,"dr"
	.p2align	2
	.long	4                       # Debug section magic
	.cv_fpo_data _foo
	.cv_stringtable

	# ASM: .cv_fpo_data

# OBJ:       Subsection [
# OBJ-NEXT:    SubSectionType: FrameData (0xF5)
# OBJ-NEXT:    SubSectionSize: 0xC4
# OBJ-NEXT:    LinkageName: _foo
# OBJ-NEXT:    FrameData {
# OBJ-NEXT:      RvaStart: 0x0
# OBJ-NEXT:      CodeSize: 0x23
# OBJ-NEXT:      LocalSize: 0x0
# OBJ-NEXT:      ParamsSize: 0x4
# OBJ-NEXT:      MaxStackSize: 0x0
# OBJ-NEXT:      PrologSize: 0x7
# OBJ-NEXT:      SavedRegsSize: 0x0
# OBJ-NEXT:      Flags [ (0x4)
# OBJ-NEXT:        IsFunctionStart (0x4)
# OBJ-NEXT:      ]
# OBJ-NEXT:      FrameFunc [
# OBJ-NEXT:        $T0 .raSearch =
# OBJ-NEXT:        $eip $T0 ^ =
# OBJ-NEXT:        $esp $T0 4 + =
# OBJ-NEXT:      ]
# OBJ-NEXT:    }
# OBJ-NEXT:    FrameData {
# OBJ-NEXT:      RvaStart: 0x1
# OBJ-NEXT:      CodeSize: 0x22
# OBJ-NEXT:      LocalSize: 0x0
# OBJ-NEXT:      ParamsSize: 0x4
# OBJ-NEXT:      MaxStackSize: 0x0
# OBJ-NEXT:      PrologSize: 0x6
# OBJ-NEXT:      SavedRegsSize: 0x4
# OBJ-NEXT:      Flags [ (0x0)
# OBJ-NEXT:      ]
# OBJ-NEXT:      FrameFunc [
# OBJ-NEXT:        $T0 .raSearch =
# OBJ-NEXT:        $eip $T0 ^ =
# OBJ-NEXT:        $esp $T0 4 + =
# OBJ-NEXT:        $ebp $T0 4 - ^ =
# OBJ-NEXT:      ]
# OBJ-NEXT:    }
# OBJ-NEXT:    FrameData {
# OBJ-NEXT:      RvaStart: 0x2
# OBJ-NEXT:      CodeSize: 0x21
# OBJ-NEXT:      LocalSize: 0x0
# OBJ-NEXT:      ParamsSize: 0x4
# OBJ-NEXT:      MaxStackSize: 0x0
# OBJ-NEXT:      PrologSize: 0x5
# OBJ-NEXT:      SavedRegsSize: 0x8
# OBJ-NEXT:      Flags [ (0x0)
# OBJ-NEXT:      ]
# OBJ-NEXT:      FrameFunc [
# OBJ-NEXT:        $T0 .raSearch =
# OBJ-NEXT:        $eip $T0 ^ =
# OBJ-NEXT:        $esp $T0 4 + =
# OBJ-NEXT:        $ebp $T0 4 - ^ =
# OBJ-NEXT:        $ebx $T0 8 - ^ =
# OBJ-NEXT:      ]
# OBJ-NEXT:    }
# OBJ-NEXT:    FrameData {
# OBJ-NEXT:      RvaStart: 0x3
# OBJ-NEXT:      CodeSize: 0x20
# OBJ-NEXT:      LocalSize: 0x0
# OBJ-NEXT:      ParamsSize: 0x4
# OBJ-NEXT:      MaxStackSize: 0x0
# OBJ-NEXT:      PrologSize: 0x4
# OBJ-NEXT:      SavedRegsSize: 0xC
# OBJ-NEXT:      Flags [ (0x0)
# OBJ-NEXT:      ]
# OBJ-NEXT:      FrameFunc [
# OBJ-NEXT:        $T0 .raSearch =
# OBJ-NEXT:        $eip $T0 ^ =
# OBJ-NEXT:        $esp $T0 4 + =
# OBJ-NEXT:        $ebp $T0 4 - ^ =
# OBJ-NEXT:        $ebx $T0 8 - ^ =
# OBJ-NEXT:        $edi $T0 12 - ^ =
# OBJ-NEXT:      ]
# OBJ-NEXT:    }
# OBJ-NEXT:    FrameData {
# OBJ-NEXT:      RvaStart: 0x4
# OBJ-NEXT:      CodeSize: 0x1F
# OBJ-NEXT:      LocalSize: 0x0
# OBJ-NEXT:      ParamsSize: 0x4
# OBJ-NEXT:      MaxStackSize: 0x0
# OBJ-NEXT:      PrologSize: 0x3
# OBJ-NEXT:      SavedRegsSize: 0x10
# OBJ-NEXT:      Flags [ (0x0)
# OBJ-NEXT:      ]
# OBJ-NEXT:      FrameFunc [
# OBJ-NEXT:        $T0 .raSearch =
# OBJ-NEXT:        $eip $T0 ^ =
# OBJ-NEXT:        $esp $T0 4 + =
# OBJ-NEXT:        $ebp $T0 4 - ^ =
# OBJ-NEXT:        $ebx $T0 8 - ^ =
# OBJ-NEXT:        $edi $T0 12 - ^ =
# OBJ-NEXT:        $esi $T0 16 - ^ =
# OBJ-NEXT:      ]
# OBJ-NEXT:    }
# OBJ-NEXT:    FrameData {
# OBJ-NEXT:      RvaStart: 0x7
# OBJ-NEXT:      CodeSize: 0x1C
# OBJ-NEXT:      LocalSize: 0x14
# OBJ-NEXT:      ParamsSize: 0x4
# OBJ-NEXT:      MaxStackSize: 0x0
# OBJ-NEXT:      PrologSize: 0x0
# OBJ-NEXT:      SavedRegsSize: 0x10
# OBJ-NEXT:      Flags [ (0x0)
# OBJ-NEXT:      ]
# OBJ-NEXT:      FrameFunc [
# OBJ-NEXT:        $T0 .raSearch =
# OBJ-NEXT:        $eip $T0 ^ =
# OBJ-NEXT:        $esp $T0 4 + =
# OBJ-NEXT:        $ebp $T0 4 - ^ =
# OBJ-NEXT:        $ebx $T0 8 - ^ =
# OBJ-NEXT:        $edi $T0 12 - ^ =
# OBJ-NEXT:        $esi $T0 16 - ^ =
# OBJ-NEXT:      ]
# OBJ-NEXT:    }
# OBJ-NOT: FrameData
