xref: /netbsd-src/external/gpl3/gdb.old/dist/gdb/testsuite/gdb.arch/amd64-stap-triplet.S (revision 8b657b0747480f8989760d71343d6dd33f8d4cf9)
1/* Copyright (C) 2013-2023 Free Software Foundation, Inc.
2
3   This file is part of GDB.
4
5   This program is free software; you can redistribute it and/or modify
6   it under the terms of the GNU General Public License as published by
7   the Free Software Foundation; either version 3 of the License, or
8   (at your option) any later version.
9
10   This program is distributed in the hope that it will be useful,
11   but WITHOUT ANY WARRANTY; without even the implied warranty of
12   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13   GNU General Public License for more details.
14
15   You should have received a copy of the GNU General Public License
16   along with this program.  If not, see <http://www.gnu.org/licenses/>.
17
18   This file was generated from the equivalent .c file using the
19   following command:
20
21     #> gcc -S amd64-stap-triplet.c -o amd64-stap-triplet.S
22
23   Then, the SystemTap SDT probe definition below was tweaked.  See below
24   for more details.  */
25
26	.file	"amd64-stap-triplet.c"
27	.text
28	.globl	main
29	.type	main, @function
30main:
31.LFB0:
32	.cfi_startproc
33# BLOCK 2 seq:0
34# PRED: ENTRY (fallthru)
35	pushq	%rbp
36	.cfi_def_cfa_offset 16
37	.cfi_offset 6, -16
38	movq	%rsp, %rbp
39	.cfi_def_cfa_register 6
40	movl	%edi, -20(%rbp)
41	movq	%rsi, -32(%rbp)
42	movl	$10, -4(%rbp)
43#APP
44# 8 "amd64-stap-triplet.c" 1
45	990: nop
46.pushsection .note.stapsdt,"?","note"
47.balign 4
48.4byte 992f-991f,994f-993f,3
49991: .asciz "stapsdt"
50992: .balign 4
51993: .8byte 990b
52.8byte _.stapsdt.base
53.8byte 0
54.asciz "test"
55.asciz "triplet"
56/* The probe's argument definition below was tweaked in order to mimic a
57   triplet displacement in x86 asm.  The original probe argument was:
58
59     -4@-4(%rbp)
60
61   The argument below is equivalent to that.  */
62.asciz "-4@-4+16-16(%rbp)"
63994: .balign 4
64.popsection
65
66# 0 "" 2
67# 8 "amd64-stap-triplet.c" 1
68	.ifndef _.stapsdt.base
69.pushsection .stapsdt.base,"aG","progbits",.stapsdt.base,comdat
70.weak _.stapsdt.base
71.hidden _.stapsdt.base
72_.stapsdt.base: .space 1
73.size _.stapsdt.base,1
74.popsection
75.endif
76
77# 0 "" 2
78#NO_APP
79	movl	$0, %eax
80	popq	%rbp
81	.cfi_def_cfa 7, 8
82# SUCC: EXIT [100.0%]
83	ret
84	.cfi_endproc
85.LFE0:
86	.size	main, .-main
87	.ident	"GCC: (GNU) 4.7.2 20120921 (Red Hat 4.7.2-2)"
88	.section	.note.GNU-stack,"",@progbits
89