aboutsummaryrefslogtreecommitdiffstats
path: root/runtime
diff options
context:
space:
mode:
authorDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2019-04-12 09:08:23 +0200
committerDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2019-04-12 09:08:23 +0200
commit552147109492793cd811d37c3c7e310090bb5476 (patch)
tree7c88854440b760e236f2a3299ebe0a7ff6695640 /runtime
parent525720d136acb20dca47f31655c1940cc341c69e (diff)
downloadcompcert-kvx-552147109492793cd811d37c3c7e310090bb5476.tar.gz
compcert-kvx-552147109492793cd811d37c3c7e310090bb5476.zip
simplification of the varargs procedure: they are leaf procedures, there is no need to save $ra
Diffstat (limited to 'runtime')
-rw-r--r--runtime/mppa_k1c/vararg.S41
1 files changed, 1 insertions, 40 deletions
diff --git a/runtime/mppa_k1c/vararg.S b/runtime/mppa_k1c/vararg.S
index 0c96b2ff..9e23e0b3 100644
--- a/runtime/mppa_k1c/vararg.S
+++ b/runtime/mppa_k1c/vararg.S
@@ -7,18 +7,6 @@
.balign 2
.globl __compcert_va_int32
__compcert_va_int32:
-# Prologue
- addd $r14 = $r12, 0
-;;
- addd $r12 = $r12, -16
-;;
- sd 0[$r12] = $r14
-;;
- get $r16 = $ra
-;;
- sd 8[$r12] = $r16
-;;
-# Body
ld $r32 = 0[$r0] # $r32 <- *ap
;;
addd $r32 = $r32, 8 # $r32 <- $r32 + WORDSIZE
@@ -26,14 +14,6 @@ __compcert_va_int32:
sd 0[$r0] = $r32 # *ap <- $r32
;;
lws $r0 = -8[$r32] # retvalue <- 32-bits at *ap - WORDSIZE
-;;
-# Prologue
- ld $r16 = 8[$r12]
-;;
- set $ra = $r16
-;;
- addd $r12 = $r12, 16
-;;
ret
;;
@@ -47,17 +27,6 @@ __compcert_va_float64:
# FIXME this assumes pass-by-reference
__compcert_va_composite:
# Prologue
- addd $r14 = $r12, 0
-;;
- addd $r12 = $r12, -16
-;;
- sd 0[$r12] = $r14
-;;
- get $r16 = $ra
-;;
- sd 8[$r12] = $r16
-;;
-# Body
ld $r32 = 0[$r0] # $r32 <- *ap
;;
addd $r32 = $r32, 8 # $r32 <- $r32 + WORDSIZE
@@ -65,16 +34,8 @@ __compcert_va_composite:
sd 0[$r0] = $r32 # *ap <- $r32
;;
ld $r0 = -8[$r32] # retvalue <- 64-bits at *ap - WORDSIZE
-;;
-# Prologue
- ld $r16 = 8[$r12]
-;;
- set $ra = $r16
-;;
- addd $r12 = $r12, 16
-;;
ret
- ;;
+;;
# FIXME this assumes pass-by-reference
.globl __compcert_acswapd