/* This testcase is part of GDB, the GNU debugger.

   Copyright 2011-2021 Free Software Foundation, Inc.

   This program is free software; you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
   the Free Software Foundation; either version 3 of the License, or
   (at your option) any later version.

   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   GNU General Public License for more details.

   You should have received a copy of the GNU General Public License
   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */

/* This file is compiled from gdb.mi/mi2-amd64-entry-value.c
   using -g -dA -S -O2.  */

	.file	"mi2-amd64-entry-value.c"
	.text
.Ltext0:
	.p2align 4,,15
	.type	e, @function
e:
.LFB0:
	.file 1 "gdb.mi/mi2-amd64-entry-value.c"
	# gdb.mi/mi2-amd64-entry-value.c:22
	.loc 1 22 0
	.cfi_startproc
.LVL0:
# BLOCK 2 freq:10000 seq:0
# PRED: ENTRY [100.0%]  (fallthru)
	# gdb.mi/mi2-amd64-entry-value.c:23
	.loc 1 23 0
	movl	$0, v(%rip)
# SUCC: EXIT [100.0%] 
	# gdb.mi/mi2-amd64-entry-value.c:24
	.loc 1 24 0
	ret
	.cfi_endproc
.LFE0:
	.size	e, .-e
	.p2align 4,,15
	.type	data, @function
data:
.LFB1:
	# gdb.mi/mi2-amd64-entry-value.c:28
	.loc 1 28 0
	.cfi_startproc
# BLOCK 2 freq:10000 seq:0
# PRED: ENTRY [100.0%]  (fallthru)
	# gdb.mi/mi2-amd64-entry-value.c:30
	.loc 1 30 0
	movl	$10, %eax
# SUCC: EXIT [100.0%] 
	ret
	.cfi_endproc
.LFE1:
	.size	data, .-data
	.p2align 4,,15
	.type	data2, @function
data2:
.LFB2:
	# gdb.mi/mi2-amd64-entry-value.c:34
	.loc 1 34 0
	.cfi_startproc
# BLOCK 2 freq:10000 seq:0
# PRED: ENTRY [100.0%]  (fallthru)
	# gdb.mi/mi2-amd64-entry-value.c:36
	.loc 1 36 0
	movl	$20, %eax
# SUCC: EXIT [100.0%] 
	ret
	.cfi_endproc
.LFE2:
	.size	data2, .-data2
	.p2align 4,,15
	.type	different, @function
different:
.LFB3:
	# gdb.mi/mi2-amd64-entry-value.c:40
	.loc 1 40 0
	.cfi_startproc
.LVL1:
# BLOCK 2 freq:10000 seq:0
# PRED: ENTRY [100.0%]  (fallthru)
	pushq	%rbx
.LCFI0:
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	# gdb.mi/mi2-amd64-entry-value.c:41
	.loc 1 41 0
	leal	1(%rdi), %ebx
.LVL2:
	# gdb.mi/mi2-amd64-entry-value.c:42
	.loc 1 42 0
	cvtsi2sd	%ebx, %xmm0
	movl	%ebx, %edi
	call	e
.LVL3:
	# gdb.mi/mi2-amd64-entry-value.c:43
	.loc 1 43 0
#APP
# 43 "gdb.mi/mi2-amd64-entry-value.c" 1
	breakhere_different:
# 0 "" 2
	# gdb.mi/mi2-amd64-entry-value.c:45
	.loc 1 45 0
#NO_APP
	movl	%ebx, %eax
	popq	%rbx
.LCFI1:
	.cfi_def_cfa_offset 8
.LVL4:
# SUCC: EXIT [100.0%] 
	ret
	.cfi_endproc
.LFE3:
	.size	different, .-different
	.p2align 4,,15
	.type	validity, @function
validity:
.LFB4:
	# gdb.mi/mi2-amd64-entry-value.c:49
	.loc 1 49 0
	.cfi_startproc
.LVL5:
# BLOCK 2 freq:10000 seq:0
# PRED: ENTRY [100.0%]  (fallthru)
	# gdb.mi/mi2-amd64-entry-value.c:51
	.loc 1 51 0
	xorpd	%xmm0, %xmm0
	# gdb.mi/mi2-amd64-entry-value.c:49
	.loc 1 49 0
	pushq	%rbx
.LCFI2:
	.cfi_def_cfa_offset 16
	.cfi_offset 3, -16
	# gdb.mi/mi2-amd64-entry-value.c:51
	.loc 1 51 0
	xorl	%edi, %edi
	# gdb.mi/mi2-amd64-entry-value.c:49
	.loc 1 49 0
	movl	%esi, %ebx
	# gdb.mi/mi2-amd64-entry-value.c:51
	.loc 1 51 0
	call	e
.LVL6:
	# gdb.mi/mi2-amd64-entry-value.c:52
	.loc 1 52 0
#APP
# 52 "gdb.mi/mi2-amd64-entry-value.c" 1
	breakhere_validity:
# 0 "" 2
	# gdb.mi/mi2-amd64-entry-value.c:54
	.loc 1 54 0
#NO_APP
	movl	%ebx, %eax
	popq	%rbx
.LCFI3:
	.cfi_def_cfa_offset 8
.LVL7:
# SUCC: EXIT [100.0%] 
	ret
	.cfi_endproc
.LFE4:
	.size	validity, .-validity
	.p2align 4,,15
	.type	invalid, @function
invalid:
.LFB5:
	# gdb.mi/mi2-amd64-entry-value.c:58
	.loc 1 58 0
	.cfi_startproc
.LVL8:
# BLOCK 2 freq:10000 seq:0
# PRED: ENTRY [100.0%]  (fallthru)
	# gdb.mi/mi2-amd64-entry-value.c:59
	.loc 1 59 0
	xorpd	%xmm0, %xmm0
	xorl	%edi, %edi
.LVL9:
	call	e
.LVL10:
	# gdb.mi/mi2-amd64-entry-value.c:60
	.loc 1 60 0
#APP
# 60 "gdb.mi/mi2-amd64-entry-value.c" 1
	breakhere_invalid:
# 0 "" 2
# SUCC: EXIT [100.0%] 
	# gdb.mi/mi2-amd64-entry-value.c:61
	.loc 1 61 0
#NO_APP
	ret
	.cfi_endproc
.LFE5:
	.size	invalid, .-invalid
	.section	.text.startup,"ax",@progbits
	.p2align 4,,15
	.globl	main
	.type	main, @function
main:
.LFB6:
	# gdb.mi/mi2-amd64-entry-value.c:65
	.loc 1 65 0
	.cfi_startproc
# BLOCK 2 freq:10000 seq:0
# PRED: ENTRY [100.0%]  (fallthru)
	# gdb.mi/mi2-amd64-entry-value.c:66
	.loc 1 66 0
	movl	$5, %edi
	call	different
.LVL11:
	# gdb.mi/mi2-amd64-entry-value.c:67
	.loc 1 67 0
	call	data
.LVL12:
	movl	$5, %edi
	movl	%eax, %esi
	call	validity
.LVL13:
	# gdb.mi/mi2-amd64-entry-value.c:68
	.loc 1 68 0
	call	data2
.LVL14:
	movl	%eax, %edi
	call	invalid
.LVL15:
	# gdb.mi/mi2-amd64-entry-value.c:70
	.loc 1 70 0
	xorl	%eax, %eax
	.p2align 4,,1
# SUCC: EXIT [100.0%] 
	ret
	.cfi_endproc
.LFE6:
	.size	main, .-main
	.local	v
	.comm	v,4,4
	.text
.Letext0:
	.section	.debug_info,"",@progbits
.Ldebug_info0:
	.long	0x24e	# Length of Compilation Unit Info
	.value	0x2	# DWARF version number
	.long	.Ldebug_abbrev0	# Offset Into Abbrev. Section
	.byte	0x8	# Pointer Size (in bytes)
	.uleb128 0x1	# (DIE (0xb) DW_TAG_compile_unit)
	.long	.LASF3	# DW_AT_producer: "GNU C 4.7.0 20110912 (experimental)"
	.byte	0x1	# DW_AT_language
	.long	.LASF4	# DW_AT_name: "gdb.mi/mi2-amd64-entry-value.c"
	.long	.LASF5	# DW_AT_comp_dir: ""
	.long	.Ldebug_ranges0+0	# DW_AT_ranges
	.quad	0	# DW_AT_low_pc
	.quad	0	# DW_AT_entry_pc
	.long	.Ldebug_line0	# DW_AT_stmt_list
	.uleb128 0x2	# (DIE (0x31) DW_TAG_base_type)
	.byte	0x8	# DW_AT_byte_size
	.byte	0x4	# DW_AT_encoding
	.long	.LASF0	# DW_AT_name: "double"
	.uleb128 0x3	# (DIE (0x38) DW_TAG_base_type)
	.byte	0x4	# DW_AT_byte_size
	.byte	0x5	# DW_AT_encoding
	.ascii "int\0"	# DW_AT_name
	.uleb128 0x4	# (DIE (0x3f) DW_TAG_subprogram)
	.ascii "e\0"	# DW_AT_name
	.byte	0x1	# DW_AT_decl_file (gdb.mi/mi2-amd64-entry-value.c)
	.byte	0x15	# DW_AT_decl_line
	.byte	0x1	# DW_AT_prototyped
	.quad	.LFB0	# DW_AT_low_pc
	.quad	.LFE0	# DW_AT_high_pc
	.byte	0x2	# DW_AT_frame_base
	.byte	0x77	# DW_OP_breg7
	.sleb128 8
	.byte	0x1	# DW_AT_GNU_all_call_sites
	.long	0x74	# DW_AT_sibling
	.uleb128 0x5	# (DIE (0x5d) DW_TAG_formal_parameter)
	.ascii "i\0"	# DW_AT_name
	.byte	0x1	# DW_AT_decl_file (gdb.mi/mi2-amd64-entry-value.c)
	.byte	0x15	# DW_AT_decl_line
	.long	0x38	# DW_AT_type
	.byte	0x1	# DW_AT_location
	.byte	0x55	# DW_OP_reg5
	.uleb128 0x5	# (DIE (0x68) DW_TAG_formal_parameter)
	.ascii "j\0"	# DW_AT_name
	.byte	0x1	# DW_AT_decl_file (gdb.mi/mi2-amd64-entry-value.c)
	.byte	0x15	# DW_AT_decl_line
	.long	0x31	# DW_AT_type
	.byte	0x1	# DW_AT_location
	.byte	0x61	# DW_OP_reg17
	.byte	0	# end of children of DIE 0x3f
	.uleb128 0x6	# (DIE (0x74) DW_TAG_subprogram)
	.long	.LASF1	# DW_AT_name: "data"
	.byte	0x1	# DW_AT_decl_file (gdb.mi/mi2-amd64-entry-value.c)
	.byte	0x1b	# DW_AT_decl_line
	.byte	0x1	# DW_AT_prototyped
	.long	0x38	# DW_AT_type
	.quad	.LFB1	# DW_AT_low_pc
	.quad	.LFE1	# DW_AT_high_pc
	.byte	0x2	# DW_AT_frame_base
	.byte	0x77	# DW_OP_breg7
	.sleb128 8
	.byte	0x1	# DW_AT_GNU_all_call_sites
	.uleb128 0x6	# (DIE (0x94) DW_TAG_subprogram)
	.long	.LASF2	# DW_AT_name: "data2"
	.byte	0x1	# DW_AT_decl_file (gdb.mi/mi2-amd64-entry-value.c)
	.byte	0x21	# DW_AT_decl_line
	.byte	0x1	# DW_AT_prototyped
	.long	0x38	# DW_AT_type
	.quad	.LFB2	# DW_AT_low_pc
	.quad	.LFE2	# DW_AT_high_pc
	.byte	0x2	# DW_AT_frame_base
	.byte	0x77	# DW_OP_breg7
	.sleb128 8
	.byte	0x1	# DW_AT_GNU_all_call_sites
	.uleb128 0x7	# (DIE (0xb4) DW_TAG_subprogram)
	.long	.LASF6	# DW_AT_name: "different"
	.byte	0x1	# DW_AT_decl_file (gdb.mi/mi2-amd64-entry-value.c)
	.byte	0x27	# DW_AT_decl_line
	.byte	0x1	# DW_AT_prototyped
	.long	0x38	# DW_AT_type
	.quad	.LFB3	# DW_AT_low_pc
	.quad	.LFE3	# DW_AT_high_pc
	.long	.LLST0	# DW_AT_frame_base
	.byte	0x1	# DW_AT_GNU_all_call_sites
	.long	0x107	# DW_AT_sibling
	.uleb128 0x8	# (DIE (0xd9) DW_TAG_formal_parameter)
	.ascii "val\0"	# DW_AT_name
	.byte	0x1	# DW_AT_decl_file (gdb.mi/mi2-amd64-entry-value.c)
	.byte	0x27	# DW_AT_decl_line
	.long	0x38	# DW_AT_type
	.long	.LLST1	# DW_AT_location
	.uleb128 0x9	# (DIE (0xe8) DW_TAG_GNU_call_site)
	.quad	.LVL3	# DW_AT_low_pc
	.long	0x3f	# DW_AT_abstract_origin
	.uleb128 0xa	# (DIE (0xf5) DW_TAG_GNU_call_site_parameter)
	.byte	0x1	# DW_AT_location
	.byte	0x55	# DW_OP_reg5
	.byte	0x2	# DW_AT_GNU_call_site_value
	.byte	0x73	# DW_OP_breg3
	.sleb128 0
	.uleb128 0xa	# (DIE (0xfb) DW_TAG_GNU_call_site_parameter)
	.byte	0x1	# DW_AT_location
	.byte	0x61	# DW_OP_reg17
	.byte	0x6	# DW_AT_GNU_call_site_value
	.byte	0x73	# DW_OP_breg3
	.sleb128 0
	.byte	0xf7	# DW_OP_GNU_convert
	.uleb128 0x38
	.byte	0xf7	# DW_OP_GNU_convert
	.uleb128 0x31
	.byte	0	# end of children of DIE 0xe8
	.byte	0	# end of children of DIE 0xb4
	.uleb128 0x7	# (DIE (0x107) DW_TAG_subprogram)
	.long	.LASF7	# DW_AT_name: "validity"
	.byte	0x1	# DW_AT_decl_file (gdb.mi/mi2-amd64-entry-value.c)
	.byte	0x30	# DW_AT_decl_line
	.byte	0x1	# DW_AT_prototyped
	.long	0x38	# DW_AT_type
	.quad	.LFB4	# DW_AT_low_pc
	.quad	.LFE4	# DW_AT_high_pc
	.long	.LLST2	# DW_AT_frame_base
	.byte	0x1	# DW_AT_GNU_all_call_sites
	.long	0x16d	# DW_AT_sibling
	.uleb128 0xb	# (DIE (0x12c) DW_TAG_formal_parameter)
	.long	.LASF8	# DW_AT_name: "lost"
	.byte	0x1	# DW_AT_decl_file (gdb.mi/mi2-amd64-entry-value.c)
	.byte	0x30	# DW_AT_decl_line
	.long	0x38	# DW_AT_type
	.long	.LLST3	# DW_AT_location
	.uleb128 0xb	# (DIE (0x13b) DW_TAG_formal_parameter)
	.long	.LASF9	# DW_AT_name: "born"
	.byte	0x1	# DW_AT_decl_file (gdb.mi/mi2-amd64-entry-value.c)
	.byte	0x30	# DW_AT_decl_line
	.long	0x38	# DW_AT_type
	.long	.LLST4	# DW_AT_location
	.uleb128 0x9	# (DIE (0x14a) DW_TAG_GNU_call_site)
	.quad	.LVL6	# DW_AT_low_pc
	.long	0x3f	# DW_AT_abstract_origin
	.uleb128 0xa	# (DIE (0x157) DW_TAG_GNU_call_site_parameter)
	.byte	0x1	# DW_AT_location
	.byte	0x55	# DW_OP_reg5
	.byte	0x1	# DW_AT_GNU_call_site_value
	.byte	0x30	# DW_OP_lit0
	.uleb128 0xa	# (DIE (0x15c) DW_TAG_GNU_call_site_parameter)
	.byte	0x1	# DW_AT_location
	.byte	0x61	# DW_OP_reg17
	.byte	0xb	# DW_AT_GNU_call_site_value
	.byte	0xf4	# DW_OP_GNU_const_type
	.uleb128 0x31
	.byte	0x8
	.long	0	# fp or vector constant word 0
	.long	0	# fp or vector constant word 1
	.byte	0	# end of children of DIE 0x14a
	.byte	0	# end of children of DIE 0x107
	.uleb128 0xc	# (DIE (0x16d) DW_TAG_subprogram)
	.long	.LASF10	# DW_AT_name: "invalid"
	.byte	0x1	# DW_AT_decl_file (gdb.mi/mi2-amd64-entry-value.c)
	.byte	0x39	# DW_AT_decl_line
	.byte	0x1	# DW_AT_prototyped
	.quad	.LFB5	# DW_AT_low_pc
	.quad	.LFE5	# DW_AT_high_pc
	.byte	0x2	# DW_AT_frame_base
	.byte	0x77	# DW_OP_breg7
	.sleb128 8
	.byte	0x1	# DW_AT_GNU_all_call_sites
	.long	0x1bf	# DW_AT_sibling
	.uleb128 0x8	# (DIE (0x18d) DW_TAG_formal_parameter)
	.ascii "inv\0"	# DW_AT_name
	.byte	0x1	# DW_AT_decl_file (gdb.mi/mi2-amd64-entry-value.c)
	.byte	0x39	# DW_AT_decl_line
	.long	0x38	# DW_AT_type
	.long	.LLST5	# DW_AT_location
	.uleb128 0x9	# (DIE (0x19c) DW_TAG_GNU_call_site)
	.quad	.LVL10	# DW_AT_low_pc
	.long	0x3f	# DW_AT_abstract_origin
	.uleb128 0xa	# (DIE (0x1a9) DW_TAG_GNU_call_site_parameter)
	.byte	0x1	# DW_AT_location
	.byte	0x55	# DW_OP_reg5
	.byte	0x1	# DW_AT_GNU_call_site_value
	.byte	0x30	# DW_OP_lit0
	.uleb128 0xa	# (DIE (0x1ae) DW_TAG_GNU_call_site_parameter)
	.byte	0x1	# DW_AT_location
	.byte	0x61	# DW_OP_reg17
	.byte	0xb	# DW_AT_GNU_call_site_value
	.byte	0xf4	# DW_OP_GNU_const_type
	.uleb128 0x31
	.byte	0x8
	.long	0	# fp or vector constant word 0
	.long	0	# fp or vector constant word 1
	.byte	0	# end of children of DIE 0x19c
	.byte	0	# end of children of DIE 0x16d
	.uleb128 0xd	# (DIE (0x1bf) DW_TAG_subprogram)
	.byte	0x1	# DW_AT_external
	.long	.LASF11	# DW_AT_name: "main"
	.byte	0x1	# DW_AT_decl_file (gdb.mi/mi2-amd64-entry-value.c)
	.byte	0x40	# DW_AT_decl_line
	.long	0x38	# DW_AT_type
	.quad	.LFB6	# DW_AT_low_pc
	.quad	.LFE6	# DW_AT_high_pc
	.byte	0x2	# DW_AT_frame_base
	.byte	0x77	# DW_OP_breg7
	.sleb128 8
	.byte	0x1	# DW_AT_GNU_all_call_sites
	.long	0x239	# DW_AT_sibling
	.uleb128 0xe	# (DIE (0x1e3) DW_TAG_GNU_call_site)
	.quad	.LVL11	# DW_AT_low_pc
	.long	0xb4	# DW_AT_abstract_origin
	.long	0x1fa	# DW_AT_sibling
	.uleb128 0xa	# (DIE (0x1f4) DW_TAG_GNU_call_site_parameter)
	.byte	0x1	# DW_AT_location
	.byte	0x55	# DW_OP_reg5
	.byte	0x1	# DW_AT_GNU_call_site_value
	.byte	0x35	# DW_OP_lit5
	.byte	0	# end of children of DIE 0x1e3
	.uleb128 0xf	# (DIE (0x1fa) DW_TAG_GNU_call_site)
	.quad	.LVL12	# DW_AT_low_pc
	.long	0x74	# DW_AT_abstract_origin
	.uleb128 0xe	# (DIE (0x207) DW_TAG_GNU_call_site)
	.quad	.LVL13	# DW_AT_low_pc
	.long	0x107	# DW_AT_abstract_origin
	.long	0x21e	# DW_AT_sibling
	.uleb128 0xa	# (DIE (0x218) DW_TAG_GNU_call_site_parameter)
	.byte	0x1	# DW_AT_location
	.byte	0x55	# DW_OP_reg5
	.byte	0x1	# DW_AT_GNU_call_site_value
	.byte	0x35	# DW_OP_lit5
	.byte	0	# end of children of DIE 0x207
	.uleb128 0xf	# (DIE (0x21e) DW_TAG_GNU_call_site)
	.quad	.LVL14	# DW_AT_low_pc
	.long	0x94	# DW_AT_abstract_origin
	.uleb128 0xf	# (DIE (0x22b) DW_TAG_GNU_call_site)
	.quad	.LVL15	# DW_AT_low_pc
	.long	0x16d	# DW_AT_abstract_origin
	.byte	0	# end of children of DIE 0x1bf
	.uleb128 0x10	# (DIE (0x239) DW_TAG_variable)
	.ascii "v\0"	# DW_AT_name
	.byte	0x1	# DW_AT_decl_file (gdb.mi/mi2-amd64-entry-value.c)
	.byte	0x12	# DW_AT_decl_line
	.long	0x24c	# DW_AT_type
	.byte	0x9	# DW_AT_location
	.byte	0x3	# DW_OP_addr
	.quad	v
	.uleb128 0x11	# (DIE (0x24c) DW_TAG_volatile_type)
	.long	0x38	# DW_AT_type
	.byte	0	# end of children of DIE 0xb
	.section	.debug_abbrev,"",@progbits
.Ldebug_abbrev0:
	.uleb128 0x1	# (abbrev code)
	.uleb128 0x11	# (TAG: DW_TAG_compile_unit)
	.byte	0x1	# DW_children_yes
	.uleb128 0x25	# (DW_AT_producer)
	.uleb128 0xe	# (DW_FORM_strp)
	.uleb128 0x13	# (DW_AT_language)
	.uleb128 0xb	# (DW_FORM_data1)
	.uleb128 0x3	# (DW_AT_name)
	.uleb128 0xe	# (DW_FORM_strp)
	.uleb128 0x1b	# (DW_AT_comp_dir)
	.uleb128 0xe	# (DW_FORM_strp)
	.uleb128 0x55	# (DW_AT_ranges)
	.uleb128 0x6	# (DW_FORM_data4)
	.uleb128 0x11	# (DW_AT_low_pc)
	.uleb128 0x1	# (DW_FORM_addr)
	.uleb128 0x52	# (DW_AT_entry_pc)
	.uleb128 0x1	# (DW_FORM_addr)
	.uleb128 0x10	# (DW_AT_stmt_list)
	.uleb128 0x6	# (DW_FORM_data4)
	.byte	0
	.byte	0
	.uleb128 0x2	# (abbrev code)
	.uleb128 0x24	# (TAG: DW_TAG_base_type)
	.byte	0	# DW_children_no
	.uleb128 0xb	# (DW_AT_byte_size)
	.uleb128 0xb	# (DW_FORM_data1)
	.uleb128 0x3e	# (DW_AT_encoding)
	.uleb128 0xb	# (DW_FORM_data1)
	.uleb128 0x3	# (DW_AT_name)
	.uleb128 0xe	# (DW_FORM_strp)
	.byte	0
	.byte	0
	.uleb128 0x3	# (abbrev code)
	.uleb128 0x24	# (TAG: DW_TAG_base_type)
	.byte	0	# DW_children_no
	.uleb128 0xb	# (DW_AT_byte_size)
	.uleb128 0xb	# (DW_FORM_data1)
	.uleb128 0x3e	# (DW_AT_encoding)
	.uleb128 0xb	# (DW_FORM_data1)
	.uleb128 0x3	# (DW_AT_name)
	.uleb128 0x8	# (DW_FORM_string)
	.byte	0
	.byte	0
	.uleb128 0x4	# (abbrev code)
	.uleb128 0x2e	# (TAG: DW_TAG_subprogram)
	.byte	0x1	# DW_children_yes
	.uleb128 0x3	# (DW_AT_name)
	.uleb128 0x8	# (DW_FORM_string)
	.uleb128 0x3a	# (DW_AT_decl_file)
	.uleb128 0xb	# (DW_FORM_data1)
	.uleb128 0x3b	# (DW_AT_decl_line)
	.uleb128 0xb	# (DW_FORM_data1)
	.uleb128 0x27	# (DW_AT_prototyped)
	.uleb128 0xc	# (DW_FORM_flag)
	.uleb128 0x11	# (DW_AT_low_pc)
	.uleb128 0x1	# (DW_FORM_addr)
	.uleb128 0x12	# (DW_AT_high_pc)
	.uleb128 0x1	# (DW_FORM_addr)
	.uleb128 0x40	# (DW_AT_frame_base)
	.uleb128 0xa	# (DW_FORM_block1)
	.uleb128 0x2117	# (DW_AT_GNU_all_call_sites)
	.uleb128 0xc	# (DW_FORM_flag)
	.uleb128 0x1	# (DW_AT_sibling)
	.uleb128 0x13	# (DW_FORM_ref4)
	.byte	0
	.byte	0
	.uleb128 0x5	# (abbrev code)
	.uleb128 0x5	# (TAG: DW_TAG_formal_parameter)
	.byte	0	# DW_children_no
	.uleb128 0x3	# (DW_AT_name)
	.uleb128 0x8	# (DW_FORM_string)
	.uleb128 0x3a	# (DW_AT_decl_file)
	.uleb128 0xb	# (DW_FORM_data1)
	.uleb128 0x3b	# (DW_AT_decl_line)
	.uleb128 0xb	# (DW_FORM_data1)
	.uleb128 0x49	# (DW_AT_type)
	.uleb128 0x13	# (DW_FORM_ref4)
	.uleb128 0x2	# (DW_AT_location)
	.uleb128 0xa	# (DW_FORM_block1)
	.byte	0
	.byte	0
	.uleb128 0x6	# (abbrev code)
	.uleb128 0x2e	# (TAG: DW_TAG_subprogram)
	.byte	0	# DW_children_no
	.uleb128 0x3	# (DW_AT_name)
	.uleb128 0xe	# (DW_FORM_strp)
	.uleb128 0x3a	# (DW_AT_decl_file)
	.uleb128 0xb	# (DW_FORM_data1)
	.uleb128 0x3b	# (DW_AT_decl_line)
	.uleb128 0xb	# (DW_FORM_data1)
	.uleb128 0x27	# (DW_AT_prototyped)
	.uleb128 0xc	# (DW_FORM_flag)
	.uleb128 0x49	# (DW_AT_type)
	.uleb128 0x13	# (DW_FORM_ref4)
	.uleb128 0x11	# (DW_AT_low_pc)
	.uleb128 0x1	# (DW_FORM_addr)
	.uleb128 0x12	# (DW_AT_high_pc)
	.uleb128 0x1	# (DW_FORM_addr)
	.uleb128 0x40	# (DW_AT_frame_base)
	.uleb128 0xa	# (DW_FORM_block1)
	.uleb128 0x2117	# (DW_AT_GNU_all_call_sites)
	.uleb128 0xc	# (DW_FORM_flag)
	.byte	0
	.byte	0
	.uleb128 0x7	# (abbrev code)
	.uleb128 0x2e	# (TAG: DW_TAG_subprogram)
	.byte	0x1	# DW_children_yes
	.uleb128 0x3	# (DW_AT_name)
	.uleb128 0xe	# (DW_FORM_strp)
	.uleb128 0x3a	# (DW_AT_decl_file)
	.uleb128 0xb	# (DW_FORM_data1)
	.uleb128 0x3b	# (DW_AT_decl_line)
	.uleb128 0xb	# (DW_FORM_data1)
	.uleb128 0x27	# (DW_AT_prototyped)
	.uleb128 0xc	# (DW_FORM_flag)
	.uleb128 0x49	# (DW_AT_type)
	.uleb128 0x13	# (DW_FORM_ref4)
	.uleb128 0x11	# (DW_AT_low_pc)
	.uleb128 0x1	# (DW_FORM_addr)
	.uleb128 0x12	# (DW_AT_high_pc)
	.uleb128 0x1	# (DW_FORM_addr)
	.uleb128 0x40	# (DW_AT_frame_base)
	.uleb128 0x6	# (DW_FORM_data4)
	.uleb128 0x2117	# (DW_AT_GNU_all_call_sites)
	.uleb128 0xc	# (DW_FORM_flag)
	.uleb128 0x1	# (DW_AT_sibling)
	.uleb128 0x13	# (DW_FORM_ref4)
	.byte	0
	.byte	0
	.uleb128 0x8	# (abbrev code)
	.uleb128 0x5	# (TAG: DW_TAG_formal_parameter)
	.byte	0	# DW_children_no
	.uleb128 0x3	# (DW_AT_name)
	.uleb128 0x8	# (DW_FORM_string)
	.uleb128 0x3a	# (DW_AT_decl_file)
	.uleb128 0xb	# (DW_FORM_data1)
	.uleb128 0x3b	# (DW_AT_decl_line)
	.uleb128 0xb	# (DW_FORM_data1)
	.uleb128 0x49	# (DW_AT_type)
	.uleb128 0x13	# (DW_FORM_ref4)
	.uleb128 0x2	# (DW_AT_location)
	.uleb128 0x6	# (DW_FORM_data4)
	.byte	0
	.byte	0
	.uleb128 0x9	# (abbrev code)
	.uleb128 0x4109	# (TAG: DW_TAG_GNU_call_site)
	.byte	0x1	# DW_children_yes
	.uleb128 0x11	# (DW_AT_low_pc)
	.uleb128 0x1	# (DW_FORM_addr)
	.uleb128 0x31	# (DW_AT_abstract_origin)
	.uleb128 0x13	# (DW_FORM_ref4)
	.byte	0
	.byte	0
	.uleb128 0xa	# (abbrev code)
	.uleb128 0x410a	# (TAG: DW_TAG_GNU_call_site_parameter)
	.byte	0	# DW_children_no
	.uleb128 0x2	# (DW_AT_location)
	.uleb128 0xa	# (DW_FORM_block1)
	.uleb128 0x2111	# (DW_AT_GNU_call_site_value)
	.uleb128 0xa	# (DW_FORM_block1)
	.byte	0
	.byte	0
	.uleb128 0xb	# (abbrev code)
	.uleb128 0x5	# (TAG: DW_TAG_formal_parameter)
	.byte	0	# DW_children_no
	.uleb128 0x3	# (DW_AT_name)
	.uleb128 0xe	# (DW_FORM_strp)
	.uleb128 0x3a	# (DW_AT_decl_file)
	.uleb128 0xb	# (DW_FORM_data1)
	.uleb128 0x3b	# (DW_AT_decl_line)
	.uleb128 0xb	# (DW_FORM_data1)
	.uleb128 0x49	# (DW_AT_type)
	.uleb128 0x13	# (DW_FORM_ref4)
	.uleb128 0x2	# (DW_AT_location)
	.uleb128 0x6	# (DW_FORM_data4)
	.byte	0
	.byte	0
	.uleb128 0xc	# (abbrev code)
	.uleb128 0x2e	# (TAG: DW_TAG_subprogram)
	.byte	0x1	# DW_children_yes
	.uleb128 0x3	# (DW_AT_name)
	.uleb128 0xe	# (DW_FORM_strp)
	.uleb128 0x3a	# (DW_AT_decl_file)
	.uleb128 0xb	# (DW_FORM_data1)
	.uleb128 0x3b	# (DW_AT_decl_line)
	.uleb128 0xb	# (DW_FORM_data1)
	.uleb128 0x27	# (DW_AT_prototyped)
	.uleb128 0xc	# (DW_FORM_flag)
	.uleb128 0x11	# (DW_AT_low_pc)
	.uleb128 0x1	# (DW_FORM_addr)
	.uleb128 0x12	# (DW_AT_high_pc)
	.uleb128 0x1	# (DW_FORM_addr)
	.uleb128 0x40	# (DW_AT_frame_base)
	.uleb128 0xa	# (DW_FORM_block1)
	.uleb128 0x2117	# (DW_AT_GNU_all_call_sites)
	.uleb128 0xc	# (DW_FORM_flag)
	.uleb128 0x1	# (DW_AT_sibling)
	.uleb128 0x13	# (DW_FORM_ref4)
	.byte	0
	.byte	0
	.uleb128 0xd	# (abbrev code)
	.uleb128 0x2e	# (TAG: DW_TAG_subprogram)
	.byte	0x1	# DW_children_yes
	.uleb128 0x3f	# (DW_AT_external)
	.uleb128 0xc	# (DW_FORM_flag)
	.uleb128 0x3	# (DW_AT_name)
	.uleb128 0xe	# (DW_FORM_strp)
	.uleb128 0x3a	# (DW_AT_decl_file)
	.uleb128 0xb	# (DW_FORM_data1)
	.uleb128 0x3b	# (DW_AT_decl_line)
	.uleb128 0xb	# (DW_FORM_data1)
	.uleb128 0x49	# (DW_AT_type)
	.uleb128 0x13	# (DW_FORM_ref4)
	.uleb128 0x11	# (DW_AT_low_pc)
	.uleb128 0x1	# (DW_FORM_addr)
	.uleb128 0x12	# (DW_AT_high_pc)
	.uleb128 0x1	# (DW_FORM_addr)
	.uleb128 0x40	# (DW_AT_frame_base)
	.uleb128 0xa	# (DW_FORM_block1)
	.uleb128 0x2117	# (DW_AT_GNU_all_call_sites)
	.uleb128 0xc	# (DW_FORM_flag)
	.uleb128 0x1	# (DW_AT_sibling)
	.uleb128 0x13	# (DW_FORM_ref4)
	.byte	0
	.byte	0
	.uleb128 0xe	# (abbrev code)
	.uleb128 0x4109	# (TAG: DW_TAG_GNU_call_site)
	.byte	0x1	# DW_children_yes
	.uleb128 0x11	# (DW_AT_low_pc)
	.uleb128 0x1	# (DW_FORM_addr)
	.uleb128 0x31	# (DW_AT_abstract_origin)
	.uleb128 0x13	# (DW_FORM_ref4)
	.uleb128 0x1	# (DW_AT_sibling)
	.uleb128 0x13	# (DW_FORM_ref4)
	.byte	0
	.byte	0
	.uleb128 0xf	# (abbrev code)
	.uleb128 0x4109	# (TAG: DW_TAG_GNU_call_site)
	.byte	0	# DW_children_no
	.uleb128 0x11	# (DW_AT_low_pc)
	.uleb128 0x1	# (DW_FORM_addr)
	.uleb128 0x31	# (DW_AT_abstract_origin)
	.uleb128 0x13	# (DW_FORM_ref4)
	.byte	0
	.byte	0
	.uleb128 0x10	# (abbrev code)
	.uleb128 0x34	# (TAG: DW_TAG_variable)
	.byte	0	# DW_children_no
	.uleb128 0x3	# (DW_AT_name)
	.uleb128 0x8	# (DW_FORM_string)
	.uleb128 0x3a	# (DW_AT_decl_file)
	.uleb128 0xb	# (DW_FORM_data1)
	.uleb128 0x3b	# (DW_AT_decl_line)
	.uleb128 0xb	# (DW_FORM_data1)
	.uleb128 0x49	# (DW_AT_type)
	.uleb128 0x13	# (DW_FORM_ref4)
	.uleb128 0x2	# (DW_AT_location)
	.uleb128 0xa	# (DW_FORM_block1)
	.byte	0
	.byte	0
	.uleb128 0x11	# (abbrev code)
	.uleb128 0x35	# (TAG: DW_TAG_volatile_type)
	.byte	0	# DW_children_no
	.uleb128 0x49	# (DW_AT_type)
	.uleb128 0x13	# (DW_FORM_ref4)
	.byte	0
	.byte	0
	.byte	0
	.section	.debug_loc,"",@progbits
.Ldebug_loc0:
.LLST0:
	.quad	.LFB3	# Location list begin address (*.LLST0)
	.quad	.LCFI0	# Location list end address (*.LLST0)
	.value	0x2	# Location expression size
	.byte	0x77	# DW_OP_breg7
	.sleb128 8
	.quad	.LCFI0	# Location list begin address (*.LLST0)
	.quad	.LCFI1	# Location list end address (*.LLST0)
	.value	0x2	# Location expression size
	.byte	0x77	# DW_OP_breg7
	.sleb128 16
	.quad	.LCFI1	# Location list begin address (*.LLST0)
	.quad	.LFE3	# Location list end address (*.LLST0)
	.value	0x2	# Location expression size
	.byte	0x77	# DW_OP_breg7
	.sleb128 8
	.quad	0	# Location list terminator begin (*.LLST0)
	.quad	0	# Location list terminator end (*.LLST0)
.LLST1:
	.quad	.LVL1	# Location list begin address (*.LLST1)
	.quad	.LVL2	# Location list end address (*.LLST1)
	.value	0x1	# Location expression size
	.byte	0x55	# DW_OP_reg5
	.quad	.LVL2	# Location list begin address (*.LLST1)
	.quad	.LVL4	# Location list end address (*.LLST1)
	.value	0x1	# Location expression size
	.byte	0x53	# DW_OP_reg3
	.quad	.LVL4	# Location list begin address (*.LLST1)
	.quad	.LFE3	# Location list end address (*.LLST1)
	.value	0x1	# Location expression size
	.byte	0x50	# DW_OP_reg0
	.quad	0	# Location list terminator begin (*.LLST1)
	.quad	0	# Location list terminator end (*.LLST1)
.LLST2:
	.quad	.LFB4	# Location list begin address (*.LLST2)
	.quad	.LCFI2	# Location list end address (*.LLST2)
	.value	0x2	# Location expression size
	.byte	0x77	# DW_OP_breg7
	.sleb128 8
	.quad	.LCFI2	# Location list begin address (*.LLST2)
	.quad	.LCFI3	# Location list end address (*.LLST2)
	.value	0x2	# Location expression size
	.byte	0x77	# DW_OP_breg7
	.sleb128 16
	.quad	.LCFI3	# Location list begin address (*.LLST2)
	.quad	.LFE4	# Location list end address (*.LLST2)
	.value	0x2	# Location expression size
	.byte	0x77	# DW_OP_breg7
	.sleb128 8
	.quad	0	# Location list terminator begin (*.LLST2)
	.quad	0	# Location list terminator end (*.LLST2)
.LLST3:
	.quad	.LVL5	# Location list begin address (*.LLST3)
	.quad	.LVL5	# Location list end address (*.LLST3)
	.value	0x1	# Location expression size
	.byte	0x55	# DW_OP_reg5
	.quad	0	# Location list terminator begin (*.LLST3)
	.quad	0	# Location list terminator end (*.LLST3)
.LLST4:
	.quad	.LVL5	# Location list begin address (*.LLST4)
	.quad	.LVL6-1	# Location list end address (*.LLST4)
	.value	0x1	# Location expression size
	.byte	0x54	# DW_OP_reg4
	.quad	.LVL6-1	# Location list begin address (*.LLST4)
	.quad	.LVL7	# Location list end address (*.LLST4)
	.value	0x1	# Location expression size
	.byte	0x53	# DW_OP_reg3
	.quad	.LVL7	# Location list begin address (*.LLST4)
	.quad	.LFE4	# Location list end address (*.LLST4)
	.value	0x1	# Location expression size
	.byte	0x50	# DW_OP_reg0
	.quad	0	# Location list terminator begin (*.LLST4)
	.quad	0	# Location list terminator end (*.LLST4)
.LLST5:
	.quad	.LVL8	# Location list begin address (*.LLST5)
	.quad	.LVL9	# Location list end address (*.LLST5)
	.value	0x1	# Location expression size
	.byte	0x55	# DW_OP_reg5
	.quad	.LVL9	# Location list begin address (*.LLST5)
	.quad	.LFE5	# Location list end address (*.LLST5)
	.value	0x4	# Location expression size
	.byte	0xf3	# DW_OP_GNU_entry_value
	.uleb128 0x1
	.byte	0x55	# DW_OP_reg5
	.byte	0x9f	# DW_OP_stack_value
	.quad	0	# Location list terminator begin (*.LLST5)
	.quad	0	# Location list terminator end (*.LLST5)
	.section	.debug_aranges,"",@progbits
	.long	0x3c	# Length of Address Ranges Info
	.value	0x2	# DWARF Version
	.long	.Ldebug_info0	# Offset of Compilation Unit Info
	.byte	0x8	# Size of Address
	.byte	0	# Size of Segment Descriptor
	.value	0	# Pad to 16 byte boundary
	.value	0
	.quad	.Ltext0	# Address
	.quad	.Letext0-.Ltext0	# Length
	.quad	.LFB6	# Address
	.quad	.LFE6-.LFB6	# Length
	.quad	0
	.quad	0
	.section	.debug_ranges,"",@progbits
.Ldebug_ranges0:
	.quad	.Ltext0	# Offset 0
	.quad	.Letext0
	.quad	.LFB6	# Offset 0x10
	.quad	.LFE6
	.quad	0
	.quad	0
	.section	.debug_line,"",@progbits
.Ldebug_line0:
	.section	.debug_str,"MS",@progbits,1
.LASF2:
	.string	"data2"
.LASF3:
	.string	"GNU C 4.7.0 20110912 (experimental)"
.LASF4:
	.string	"gdb.mi/mi2-amd64-entry-value.c"
.LASF9:
	.string	"born"
.LASF6:
	.string	"different"
.LASF7:
	.string	"validity"
.LASF10:
	.string	"invalid"
.LASF0:
	.string	"double"
.LASF11:
	.string	"main"
.LASF1:
	.string	"data"
.LASF8:
	.string	"lost"
.LASF5:
	.string	""
	.ident	"GCC: (GNU) 4.7.0 20110912 (experimental)"
	.section	.note.GNU-stack,"",@progbits
