aboutsummaryrefslogtreecommitdiffstats
path: root/lib/hipe/sparc/hipe_sparc_registers.erl
diff options
context:
space:
mode:
authorSverker Eriksson <[email protected]>2016-08-26 12:27:17 +0200
committerSverker Eriksson <[email protected]>2016-08-26 12:27:17 +0200
commitf3e018dc3bb3c74b88c7454f6a1888938215f912 (patch)
tree7f217508515647e557cf3c30c79badba9ab0f1dd /lib/hipe/sparc/hipe_sparc_registers.erl
parent2a6750d0804d1e30a5463c8aaf5b7342fda967fe (diff)
parenta504c30efbc14381385a6ef911ba7296840f8cb7 (diff)
downloadotp-f3e018dc3bb3c74b88c7454f6a1888938215f912.tar.gz
otp-f3e018dc3bb3c74b88c7454f6a1888938215f912.tar.bz2
otp-f3e018dc3bb3c74b88c7454f6a1888938215f912.zip
Merge branch 'sverker/hipe-backend-bugs/PR-1146' into maint
Diffstat (limited to 'lib/hipe/sparc/hipe_sparc_registers.erl')
-rw-r--r--lib/hipe/sparc/hipe_sparc_registers.erl8
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/hipe/sparc/hipe_sparc_registers.erl b/lib/hipe/sparc/hipe_sparc_registers.erl
index 884215702b..6681a10070 100644
--- a/lib/hipe/sparc/hipe_sparc_registers.erl
+++ b/lib/hipe/sparc/hipe_sparc_registers.erl
@@ -86,6 +86,8 @@
-define(I7, 31).
-define(LAST_PRECOLOURED,31). % must handle both GRP and FPR ranges
+-define(RA, ?O7).
+
-define(ARG0, ?O1).
-define(ARG1, ?O2).
-define(ARG2, ?O3).
@@ -174,7 +176,7 @@ stack_pointer() -> ?STACK_POINTER.
proc_pointer() -> ?PROC_POINTER.
-return_address() -> ?O7.
+return_address() -> ?RA.
g0() -> ?G0.
@@ -283,7 +285,9 @@ call_clobbered() -> % does the RA strip the type or not?
].
tailcall_clobbered() -> % tailcall crapola needs one temp
- [{?TEMP1,tagged},{?TEMP1,untagged}].
+ [{?TEMP1,tagged},{?TEMP1,untagged}
+ ,{?RA,tagged},{?RA,untagged}
+ ].
live_at_return() ->
[{?HEAP_POINTER,untagged},