X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2Femit-rtl.c;h=9a5533ce14e15814a0d55a68aadbfefce9965b6d;hb=ac8a72dec9e57bd3380048ab0cef058c396cf550;hp=8d8ead16f0920dfb071bf21912f83b51f4e45cc0;hpb=55f9d7dcd373061a4699e25a28e3dbb86a92ff5a;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c index 8d8ead16f09..9a5533ce14e 100644 --- a/gcc/emit-rtl.c +++ b/gcc/emit-rtl.c @@ -1504,7 +1504,7 @@ set_mem_attributes_minus_bitpos (rtx ref, tree t, int objectp, MEM_IN_STRUCT_P (ref) = AGGREGATE_TYPE_P (type); RTX_UNCHANGING_P (ref) |= ((lang_hooks.honor_readonly - && (TYPE_READONLY (type) || TREE_READONLY (t))) + && (TYPE_READONLY (type) || (t != type && TREE_READONLY (t)))) || (! TYPE_P (t) && TREE_CONSTANT (t))); MEM_POINTER (ref) = POINTER_TYPE_P (type); @@ -4751,7 +4751,7 @@ emit (rtx x) } /* Space for free sequence stack entries. */ -static GTY ((deletable (""))) struct sequence_stack *free_sequence_stack; +static GTY ((deletable)) struct sequence_stack *free_sequence_stack; /* Begin emitting insns to a sequence which can be packaged in an RTL_EXPR. If this sequence will contain something that might cause @@ -5313,7 +5313,7 @@ init_emit_once (int line_numbers) REAL_VALUE_FROM_INT (dconstm2, -2, -1, double_mode); dconsthalf = dconst1; - dconsthalf.exp--; + SET_REAL_EXP (&dconsthalf, REAL_EXP (&dconsthalf) - 1); real_arithmetic (&dconstthird, RDIV_EXPR, &dconst1, &dconst3); @@ -5483,7 +5483,7 @@ emit_copy_of_insn_after (rtx insn, rtx after) return new; } -static GTY((deletable(""))) rtx hard_reg_clobbers [NUM_MACHINE_MODES][FIRST_PSEUDO_REGISTER]; +static GTY((deletable)) rtx hard_reg_clobbers [NUM_MACHINE_MODES][FIRST_PSEUDO_REGISTER]; rtx gen_hard_reg_clobber (enum machine_mode mode, unsigned int regno) {