problem with stabs on ARM
Nick Clifton
nickc@cygnus.com
Fri Apr 7 11:36:00 GMT 2000
Hi Phillip,
: Here's a patch for the bug mentioned in
: < http://gcc.gnu.org/ml/gcc-bugs/2000-04/msg00044.html >. It seems to fix
: the problem for me.
:
: p.
:
: 2000-04-06 Philip Blundell <philb@gnu.org>
:
: * config/arm/arm.h (ARM_NAME_ENCODING_LENGTHS): Strip `*' and `@'
: too.
:
: Index: arm.h
: ===================================================================
: RCS file: /cvs/gcc/egcs/gcc/config/arm/arm.h,v
: retrieving revision 1.49.2.17
: diff -u -p -u -r1.49.2.17 arm.h
: --- arm.h 2000/03/31 16:30:17 1.49.2.17
: +++ arm.h 2000/04/07 18:01:24
: @@ -1834,6 +1834,8 @@ typedef struct
: #define ARM_NAME_ENCODING_LENGTHS \
: case SHORT_CALL_FLAG_CHAR: return 1; \
: case LONG_CALL_FLAG_CHAR: return 1; \
: + case '*': return 1; \
: + case '@': return 1; \
: SUBTARGET_NAME_ENCODING_LENGTHS
Well the case for '*' is fine, but I am worried about the case for
'@'. Did you find a situation where it was needed ? The reason I ask
is beause the arm-pe port uses the '@' to prefix to encode imported
and exported DLL symbols, and your code will clash with this.
>From gcc/config/arm/pe.h:
#define ARM_PE_FLAG_CHAR '@'
/* Ensure that @x. will be stripped from the function name. */
#define SUBTARGET_NAME_ENCODING_LENGTHS \
case ARM_PE_FLAG_CHAR: return 3;
Cheers
Nick
More information about the Gcc-patches
mailing list