summaryrefslogtreecommitdiff
path: root/experimental/elfutils/fix-aarch64_fregs.patch
diff options
context:
space:
mode:
authorA. Wilcox <awilcox@wilcox-tech.com>2019-08-08 03:33:44 +0000
committerA. Wilcox <awilcox@wilcox-tech.com>2019-08-08 03:33:44 +0000
commitaddc96410e6eae47a28314aeaace3228bd70b9cd (patch)
tree3998870b58279b308d8ea678debce30da103dd5e /experimental/elfutils/fix-aarch64_fregs.patch
parent6e8939f34d9bcc8294a64b64e5fce9ce16668070 (diff)
parent6722ef49445b3fbe7665fc487733a8710a98fb5f (diff)
downloadpackages-addc96410e6eae47a28314aeaace3228bd70b9cd.tar.gz
packages-addc96410e6eae47a28314aeaace3228bd70b9cd.tar.bz2
packages-addc96410e6eae47a28314aeaace3228bd70b9cd.tar.xz
packages-addc96410e6eae47a28314aeaace3228bd70b9cd.zip
Merge branch 'sr.2019.08.07' into 'master'
Misc changes, 2019.08.07 See merge request adelie/packages!315
Diffstat (limited to 'experimental/elfutils/fix-aarch64_fregs.patch')
-rw-r--r--experimental/elfutils/fix-aarch64_fregs.patch14
1 files changed, 14 insertions, 0 deletions
diff --git a/experimental/elfutils/fix-aarch64_fregs.patch b/experimental/elfutils/fix-aarch64_fregs.patch
new file mode 100644
index 000000000..400741639
--- /dev/null
+++ b/experimental/elfutils/fix-aarch64_fregs.patch
@@ -0,0 +1,14 @@
+It looks like fregs.vregs[] is an array of double?
+Casting to Dwarf_Word instead of & 0xFFFFFFF should do.
+
+--- a/backends/aarch64_initreg.c 2015-11-27 14:36:29.000000000 +0100
++++ b/backends/aarch64_initreg.c 2016-08-09 03:47:25.428560159 +0200
+@@ -82,7 +82,7 @@
+
+ Dwarf_Word dwarf_fregs[32];
+ for (int r = 0; r < 32; r++)
+- dwarf_fregs[r] = fregs.vregs[r] & 0xFFFFFFFF;
++ dwarf_fregs[r] = (Dwarf_Word)fregs.vregs[r];
+
+ if (! setfunc (64, 32, dwarf_fregs, arg))
+ return false;