Re: restore EH on x86-vx7r2

2021-05-04 Thread Olivier Hainque



> On 4 May 2021, at 04:45, Alexandre Oliva  wrote:
> 
> 
> x86-vx7r2 needs svr4_dbx_register_map, but the default in i386/i386.h
> was dbx_register_map, partially swapping ebp and esp in unwind info.
> 
> i386/vxworks.h had a correct overrider, but it was conditional for
> vxworks < 7.  This patch reenables the overrider unconditionally.
> 
> Tested on x86_64-linux-gnu with a cross to x86-vx7r2.  Ok to install?

Yes, good for me, thanks!

> for  gcc/ChangeLog
> 
>   * config/i386/vxworks.h (DBX_REGISTER_NUMBER): Make it
>   unconditional.



restore EH on x86-vx7r2

2021-05-03 Thread Alexandre Oliva


x86-vx7r2 needs svr4_dbx_register_map, but the default in i386/i386.h
was dbx_register_map, partially swapping ebp and esp in unwind info.

i386/vxworks.h had a correct overrider, but it was conditional for
vxworks < 7.  This patch reenables the overrider unconditionally.

Tested on x86_64-linux-gnu with a cross to x86-vx7r2.  Ok to install?


for  gcc/ChangeLog

* config/i386/vxworks.h (DBX_REGISTER_NUMBER): Make it
unconditional.
---
 gcc/config/i386/vxworks.h |   14 +++---
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/gcc/config/i386/vxworks.h b/gcc/config/i386/vxworks.h
index b3ca224fa1071..ebda7d9d26a34 100644
--- a/gcc/config/i386/vxworks.h
+++ b/gcc/config/i386/vxworks.h
@@ -37,13 +37,6 @@ along with GCC; see the file COPYING3.  If not see
 #define TARGET_SUBTARGET_DEFAULT \
(MASK_80387 | MASK_IEEE_FP | MASK_FLOAT_RETURNS | MASK_VECT8_RETURNS)
 
-/* Provide our target specific DBX_REGISTER_NUMBER.  VxWorks relies on
-   the SVR4 numbering.  */
-
-#undef DBX_REGISTER_NUMBER
-#define DBX_REGISTER_NUMBER(n) \
-  (TARGET_64BIT ? dbx64_register_map[n] : svr4_dbx_register_map[n])
-
 #undef PTRDIFF_TYPE
 #define PTRDIFF_TYPE (TARGET_LP64 ? "long int" : "int")
 
@@ -61,6 +54,13 @@ along with GCC; see the file COPYING3.  If not see
 
 #endif
 
+/* Provide our target specific DBX_REGISTER_NUMBER.  VxWorks relies on
+   the SVR4 numbering.  */
+
+#undef DBX_REGISTER_NUMBER
+#define DBX_REGISTER_NUMBER(n) \
+  (TARGET_64BIT ? dbx64_register_map[n] : svr4_dbx_register_map[n])
+
 /* CPU macro definitions, ordered to account for VxWorks 7 not
supporting CPUs older than PENTIUM4 since SR0650.  */
 


-- 
Alexandre Oliva, happy hackerhttps://FSFLA.org/blogs/lxo/
   Free Software Activist   GNU Toolchain Engineer
Disinformation flourishes because many people care deeply about injustice
but very few check the facts.  Ask me about