projects/aports·blob master · refs

14 lines · 496 B

1It looks like fregs.vregs[] is an array of double?
2Casting to Dwarf_Word instead of & 0xFFFFFFF should do.
3
4--- a/backends/aarch64_initreg.c 2015-11-27 14:36:29.000000000 +0100
5+++ b/backends/aarch64_initreg.c 2016-08-09 03:47:25.428560159 +0200
6@@ -82,7 +82,7 @@
7
8 Dwarf_Word dwarf_fregs[32];
9 for (int r = 0; r < 32; r++)
10- dwarf_fregs[r] = fregs.vregs[r] & 0xFFFFFFFF;
11+ dwarf_fregs[r] = (Dwarf_Word)fregs.vregs[r];
12
13 if (! setfunc (64, 32, dwarf_fregs, arg))
14 return false;