summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ldso/ldso/xtensa/resolve.S12
1 files changed, 4 insertions, 8 deletions
diff --git a/ldso/ldso/xtensa/resolve.S b/ldso/ldso/xtensa/resolve.S
index fb298391c..902cd8238 100644
--- a/ldso/ldso/xtensa/resolve.S
+++ b/ldso/ldso/xtensa/resolve.S
@@ -32,15 +32,11 @@
.type _dl_linux_resolve, @function
_dl_linux_resolve:
/* Fix up the high 2 bits of the return address. */
- mov a14, a0 // save a0 temporarily
- _call0 0f
- .align 4
-0: extui a13, a0, 30, 2
- slli a13, a13, 30
- mov a0, a14 // restore a0
+ movi a13, 0f
slli a12, a0, 2
- srli a12, a12, 2
- or a12, a12, a13
+0: extui a13, a13, 30, 2
+ ssai 2
+ src a12, a13, a12
/* Call the fixup function. */
movi a8, _dl_linux_resolver