Skip to content

Commit

Permalink
S390: Do not clobber R0 in 64-bit _dl_runtime_profile
Browse files Browse the repository at this point in the history
Preparation for the usage of R0 by __fentry__.

ChangeLog:

	* sysdeps/s390/s390-64/dl-trampoline.h (_dl_runtime_profile):
	Do not clobber R0.
  • Loading branch information
iii-i authored and stliibm committed Aug 10, 2018
1 parent 5755f5e commit bde6320
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 0 deletions.
5 changes: 5 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
2018-08-10 Ilya Leoshkevich <[email protected]>

* sysdeps/s390/s390-64/dl-trampoline.h (_dl_runtime_profile):
Do not clobber R0.

2018-08-10 Ilya Leoshkevich <[email protected]>

* sysdeps/s390/s390-64/dl-trampoline.h (_dl_runtime_resolve):
Expand Down
6 changes: 6 additions & 0 deletions sysdeps/s390/s390-64/dl-trampoline.h
Original file line number Diff line number Diff line change
Expand Up @@ -170,6 +170,7 @@
# define V29_OFF -208
# define V30_OFF -192
# define V31_OFF -176
# define R0_OFF -144
# define R12_OFF -136
# define R14_OFF -128
# define FRAMESIZE_OFF -120
Expand All @@ -185,6 +186,8 @@
cfi_startproc
.align 16
_dl_runtime_profile:
stg %r0,CFA_OFF+R0_OFF(%r15)
cfi_offset (r0, R0_OFF)
stg %r12,CFA_OFF+R12_OFF(%r15) # r12 is used as backup of r15
cfi_offset (r12, R12_OFF)
stg %r14,CFA_OFF+R14_OFF(%r15)
Expand Down Expand Up @@ -250,6 +253,7 @@
cfi_def_cfa_register (15)
lg %r14,CFA_OFF+R14_OFF(%r15) # restore registers
lg %r12,CFA_OFF+R12_OFF(%r15)
lg %r0,CFA_OFF+R0_OFF(%r15)
br %r1 # tail call

cfi_def_cfa_register (12)
Expand Down Expand Up @@ -287,6 +291,7 @@
cfi_def_cfa_register (15)
lg %r14,CFA_OFF+R14_OFF(%r15) # restore registers
lg %r12,CFA_OFF+R12_OFF(%r15)
lg %r0,CFA_OFF+R0_OFF(%r15)
lg %r2,CFA_OFF+RET_R2_OFF(%r15) # restore return values
ld %f0,CFA_OFF+RET_F0_OFF(%r15)
# ifdef RESTORE_VRS
Expand Down Expand Up @@ -318,6 +323,7 @@
# undef V29_OFF
# undef V30_OFF
# undef V31_OFF
# undef R0_OFF
# undef R12_OFF
# undef R14_OFF
# undef FRAMESIZE_OFF
Expand Down

0 comments on commit bde6320

Please sign in to comment.