-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[S390] ftrace: function tracer backend for s390
This implements just the basic function tracer (_mcount) backend for s390. The dynamic variant will come later. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
- Loading branch information
Heiko Carstens
authored and
Martin Schwidefsky
committed
Dec 25, 2008
1 parent
98df67b
commit 5d360a7
Showing
5 changed files
with
76 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
#ifndef _ASM_S390_FTRACE_H | ||
#define _ASM_S390_FTRACE_H | ||
|
||
#ifndef __ASSEMBLY__ | ||
extern void _mcount(void); | ||
#endif | ||
|
||
#endif /* _ASM_S390_FTRACE_H */ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
/* | ||
* Copyright IBM Corp. 2008 | ||
* | ||
* Author(s): Heiko Carstens <heiko.carstens@de.ibm.com>, | ||
* | ||
*/ | ||
|
||
#ifndef CONFIG_64BIT | ||
.globl _mcount | ||
_mcount: | ||
stm %r0,%r5,8(%r15) | ||
st %r14,56(%r15) | ||
lr %r1,%r15 | ||
ahi %r15,-96 | ||
l %r3,100(%r15) | ||
la %r2,0(%r14) | ||
st %r1,0(%r15) | ||
la %r3,0(%r3) | ||
bras %r14,0f | ||
.long ftrace_trace_function | ||
0: l %r14,0(%r14) | ||
l %r14,0(%r14) | ||
basr %r14,%r14 | ||
ahi %r15,96 | ||
lm %r0,%r5,8(%r15) | ||
l %r14,56(%r15) | ||
br %r14 | ||
|
||
.globl ftrace_stub | ||
ftrace_stub: | ||
br %r14 | ||
|
||
#else /* CONFIG_64BIT */ | ||
|
||
.globl _mcount | ||
_mcount: | ||
stmg %r0,%r5,16(%r15) | ||
stg %r14,112(%r15) | ||
lgr %r1,%r15 | ||
aghi %r15,-160 | ||
stg %r1,0(%r15) | ||
lgr %r2,%r14 | ||
lg %r3,168(%r15) | ||
larl %r14,ftrace_trace_function | ||
lg %r14,0(%r14) | ||
basr %r14,%r14 | ||
aghi %r15,160 | ||
lmg %r0,%r5,16(%r15) | ||
lg %r14,112(%r15) | ||
br %r14 | ||
|
||
.globl ftrace_stub | ||
ftrace_stub: | ||
br %r14 | ||
|
||
#endif /* CONFIG_64BIT */ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters