mcount.S (740eaf7d4dd255789987a543b0203ca239b37087) | mcount.S (657480d9c01574d1e11bbb29e725db9907daf782) |
---|---|
1/* SPDX-License-Identifier: GPL-2.0 */ 2/* 3 * Copyright IBM Corp. 2008, 2009 4 * 5 * Author(s): Heiko Carstens <heiko.carstens@de.ibm.com>, 6 * 7 */ 8 --- 28 unchanged lines hidden (view full) --- 37 BR_EX %r14 38ENDPROC(_mcount) 39EXPORT_SYMBOL(_mcount) 40 41ENTRY(ftrace_caller) 42 .globl ftrace_regs_caller 43 .set ftrace_regs_caller,ftrace_caller 44 stg %r14,(__SF_GPRS+8*8)(%r15) # save traced function caller | 1/* SPDX-License-Identifier: GPL-2.0 */ 2/* 3 * Copyright IBM Corp. 2008, 2009 4 * 5 * Author(s): Heiko Carstens <heiko.carstens@de.ibm.com>, 6 * 7 */ 8 --- 28 unchanged lines hidden (view full) --- 37 BR_EX %r14 38ENDPROC(_mcount) 39EXPORT_SYMBOL(_mcount) 40 41ENTRY(ftrace_caller) 42 .globl ftrace_regs_caller 43 .set ftrace_regs_caller,ftrace_caller 44 stg %r14,(__SF_GPRS+8*8)(%r15) # save traced function caller |
45 lghi %r14,0 # save condition code 46 ipm %r14 # don't put any instructions 47 sllg %r14,%r14,16 # clobbering CC before this point |
|
45 lgr %r1,%r15 46#if !(defined(CC_USING_HOTPATCH) || defined(CC_USING_NOP_MCOUNT)) 47 aghi %r0,MCOUNT_RETURN_FIXUP 48#endif 49 # allocate stack frame for ftrace_caller to contain traced function 50 aghi %r15,-TRACED_FUNC_FRAME_SIZE 51 stg %r1,__SF_BACKCHAIN(%r15) 52 stg %r0,(__SF_GPRS+8*8)(%r15) 53 stg %r15,(__SF_GPRS+9*8)(%r15) 54 # allocate pt_regs and stack frame for ftrace_trace_function 55 aghi %r15,-STACK_FRAME_SIZE 56 stg %r1,(STACK_PTREGS_GPRS+15*8)(%r15) | 48 lgr %r1,%r15 49#if !(defined(CC_USING_HOTPATCH) || defined(CC_USING_NOP_MCOUNT)) 50 aghi %r0,MCOUNT_RETURN_FIXUP 51#endif 52 # allocate stack frame for ftrace_caller to contain traced function 53 aghi %r15,-TRACED_FUNC_FRAME_SIZE 54 stg %r1,__SF_BACKCHAIN(%r15) 55 stg %r0,(__SF_GPRS+8*8)(%r15) 56 stg %r15,(__SF_GPRS+9*8)(%r15) 57 # allocate pt_regs and stack frame for ftrace_trace_function 58 aghi %r15,-STACK_FRAME_SIZE 59 stg %r1,(STACK_PTREGS_GPRS+15*8)(%r15) |
60 stg %r14,(STACK_PTREGS_PSW)(%r15) 61 lg %r14,(__SF_GPRS+8*8)(%r1) # restore original return address 62 stosm (STACK_PTREGS_PSW)(%r15),0 |
|
57 aghi %r1,-TRACED_FUNC_FRAME_SIZE 58 stg %r1,__SF_BACKCHAIN(%r15) 59 stg %r0,(STACK_PTREGS_PSW+8)(%r15) 60 stmg %r2,%r14,(STACK_PTREGS_GPRS+2*8)(%r15) 61#ifdef CONFIG_HAVE_MARCH_Z196_FEATURES 62 aghik %r2,%r0,-MCOUNT_INSN_SIZE 63 lgrl %r4,function_trace_op 64 lgrl %r1,ftrace_trace_function --- 44 unchanged lines hidden --- | 63 aghi %r1,-TRACED_FUNC_FRAME_SIZE 64 stg %r1,__SF_BACKCHAIN(%r15) 65 stg %r0,(STACK_PTREGS_PSW+8)(%r15) 66 stmg %r2,%r14,(STACK_PTREGS_GPRS+2*8)(%r15) 67#ifdef CONFIG_HAVE_MARCH_Z196_FEATURES 68 aghik %r2,%r0,-MCOUNT_INSN_SIZE 69 lgrl %r4,function_trace_op 70 lgrl %r1,ftrace_trace_function --- 44 unchanged lines hidden --- |