Discussion:
[GASPP PATCH] Extend armasm64 workaround for uxtw/sxtw to uxth/sxth and uxtb/sxtb as well
(too old to reply)
Martin Storsjo
2018-10-22 09:51:47 UTC
Permalink
---
gas-preprocessor.pl | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gas-preprocessor.pl b/gas-preprocessor.pl
index 7efe3b9..669d435 100755
--- a/gas-preprocessor.pl
+++ b/gas-preprocessor.pl
@@ -1011,7 +1011,7 @@ sub handle_serialized_line {

# Convert e.g. "add x0, x0, w0, uxtw" into "add x0, x0, w0, uxtw #0",
# or "ldr x0, [x0, w0, uxtw]" into "ldr x0, [x0, w0, uxtw #0]".
- $line =~ s/(uxtw|sxtw)(\s*\]?\s*)$/\1 #0\2/i;
+ $line =~ s/(uxt[whb]|sxt[whb])(\s*\]?\s*)$/\1 #0\2/i;

# Convert "mov x0, v0.d[0]" into "umov x0, v0.d[0]"
$line =~ s/\bmov\s+[xw]\d+\s*,\s*v\d+\.[ds]/u$&/i;
--
2.7.4
Luca Barbato
2018-10-22 15:39:35 UTC
Permalink
Post by Martin Storsjo
---
gas-preprocessor.pl | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gas-preprocessor.pl b/gas-preprocessor.pl
index 7efe3b9..669d435 100755
--- a/gas-preprocessor.pl
+++ b/gas-preprocessor.pl
@@ -1011,7 +1011,7 @@ sub handle_serialized_line {
# Convert e.g. "add x0, x0, w0, uxtw" into "add x0, x0, w0, uxtw #0",
# or "ldr x0, [x0, w0, uxtw]" into "ldr x0, [x0, w0, uxtw #0]".
- $line =~ s/(uxtw|sxtw)(\s*\]?\s*)$/\1 #0\2/i;
+ $line =~ s/(uxt[whb]|sxt[whb])(\s*\]?\s*)$/\1 #0\2/i;
# Convert "mov x0, v0.d[0]" into "umov x0, v0.d[0]"
$line =~ s/\bmov\s+[xw]\d+\s*,\s*v\d+\.[ds]/u$&/i;
Seems ok.
Janne Grunau
2018-10-22 18:01:07 UTC
Permalink
Post by Martin Storsjo
---
gas-preprocessor.pl | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gas-preprocessor.pl b/gas-preprocessor.pl
index 7efe3b9..669d435 100755
--- a/gas-preprocessor.pl
+++ b/gas-preprocessor.pl
@@ -1011,7 +1011,7 @@ sub handle_serialized_line {
# Convert e.g. "add x0, x0, w0, uxtw" into "add x0, x0, w0, uxtw #0",
# or "ldr x0, [x0, w0, uxtw]" into "ldr x0, [x0, w0, uxtw #0]".
- $line =~ s/(uxtw|sxtw)(\s*\]?\s*)$/\1 #0\2/i;
+ $line =~ s/(uxt[whb]|sxt[whb])(\s*\]?\s*)$/\1 #0\2/i;
# Convert "mov x0, v0.d[0]" into "umov x0, v0.d[0]"
$line =~ s/\bmov\s+[xw]\d+\s*,\s*v\d+\.[ds]/u$&/i;
ok,

Janne

Continue reading on narkive:
Loading...