diff options
author | Jeff Law <law@gcc.gnu.org> | 1994-12-17 01:43:03 -0700 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 1994-12-17 01:43:03 -0700 |
commit | 5bff1750e9a0857174c435455b6e1a01d4e60429 (patch) | |
tree | b33db73e8c51bb0ed2cdfb4aebe71c6ec45d7ac5 /gcc/config/pa/pa.c | |
parent | 1c688cd78600fdb05fd5bcdc897587e71ede0394 (diff) | |
download | gcc-5bff1750e9a0857174c435455b6e1a01d4e60429.zip gcc-5bff1750e9a0857174c435455b6e1a01d4e60429.tar.gz gcc-5bff1750e9a0857174c435455b6e1a01d4e60429.tar.bz2 |
pa.h (readonly_section): During PIC code generation, put readonly data into the standard data section.
* pa.h (readonly_section): During PIC code generation, put
readonly data into the standard data section.
* pa.c (pic_label_operand): Disallow SYMBOL_REFs (constant data).
From-SVN: r8661
Diffstat (limited to 'gcc/config/pa/pa.c')
-rw-r--r-- | gcc/config/pa/pa.c | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/gcc/config/pa/pa.c b/gcc/config/pa/pa.c index f18451d..27c1d8d 100644 --- a/gcc/config/pa/pa.c +++ b/gcc/config/pa/pa.c @@ -235,14 +235,9 @@ pic_label_operand (op, mode) { case LABEL_REF: return 1; - case SYMBOL_REF: - return (read_only_operand (op) && !FUNCTION_NAME_P (XSTR (op, 0))); case CONST: op = XEXP (op, 0); - return (((GET_CODE (XEXP (op, 0)) == SYMBOL_REF - && read_only_operand (XEXP (op, 0)) - && !FUNCTION_NAME_P (XSTR (XEXP (op, 0), 0))) - || GET_CODE (XEXP (op, 0)) == LABEL_REF) + return (GET_CODE (XEXP (op, 0)) == LABEL_REF && GET_CODE (XEXP (op, 1)) == CONST_INT); default: return 0; @@ -477,7 +472,7 @@ legitimize_pic_address (orig, mode, reg) { rtx pic_ref = orig; - /* Lables and read-only data need special handling. */ + /* Lables need special handling. */ if (pic_label_operand (orig)) { emit_insn (gen_pic_load_label (reg, orig)); |