From a326bdd8a3a60dd297abb24295471d710be83a43 Mon Sep 17 00:00:00 2001 From: John David Anglin Date: Wed, 5 Sep 2001 14:57:00 +0000 Subject: * som.h (ASM_PREFERRED_EH_DATA_FORMAT): Define. * pa.h (UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP, UNALIGNED_DOUBLE_INT_ASM_OP): Define git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@45414 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 6 ++++++ gcc/config/pa/pa.h | 7 +++++++ gcc/config/pa/som.h | 9 +++++++++ 3 files changed, 22 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index bc21be5cc13..3f9abecc779 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2001-09-05 John David Anglin + + * som.h (ASM_PREFERRED_EH_DATA_FORMAT): Define. + * pa.h (UNALIGNED_SHORT_ASM_OP, UNALIGNED_INT_ASM_OP, + UNALIGNED_DOUBLE_INT_ASM_OP): Define + 2001-09-05 Jeffrey A Law (law@cygnus.com) Jason Merrill (jason@redhat.com) diff --git a/gcc/config/pa/pa.h b/gcc/config/pa/pa.h index 24f6b41e311..4385914347d 100644 --- a/gcc/config/pa/pa.h +++ b/gcc/config/pa/pa.h @@ -1755,6 +1755,13 @@ while (0) #define ASM_OUTPUT_BYTE(FILE,VALUE) \ fprintf (FILE, "\t.byte 0x%x\n", (VALUE)) +/* C string constants giving the pseudo-op to use for a sequence of + 2, 4, and 8 byte unaligned constants. dwarf2out.c needs these. */ + +#define UNALIGNED_SHORT_ASM_OP (TARGET_GAS ? "\t.half " : NULL) +#define UNALIGNED_INT_ASM_OP (TARGET_GAS ? "\t.word " : NULL) +#define UNALIGNED_DOUBLE_INT_ASM_OP (TARGET_GAS ? "\t.dword " : NULL) + #define ASM_GLOBALIZE_LABEL(FILE, NAME) \ do { \ /* We only handle DATA objects here, functions are globalized in \ diff --git a/gcc/config/pa/som.h b/gcc/config/pa/som.h index 0d20555e5ab..7588b66d9c2 100644 --- a/gcc/config/pa/som.h +++ b/gcc/config/pa/som.h @@ -51,6 +51,15 @@ Boston, MA 02111-1307, USA. */ fprintf (FILE, \ "\t.stabs \"\",%d,0,0,L$text_end0000\nL$text_end0000:\n", N_SO) +/* Select a format to encode pointers in exception handling data. CODE + is 0 for data, 1 for code labels, 2 for function pointers. GLOBAL is + true if the symbol may be affected by dynamic relocations. Because + the HP assembler does auto alignment, it is necessary to use + DW_EH_PE_aligned instead of the default DW_EH_PE_absptr. */ + +#define ASM_PREFERRED_EH_DATA_FORMAT(CODE, GLOBAL) \ + (TARGET_GAS ? DW_EH_PE_absptr : DW_EH_PE_aligned) + /* HPUX has a program 'chatr' to list the dependencies of dynamically linked executables and shared libraries. */ #define LDD_SUFFIX "chatr" -- cgit v1.2.3