re PR target/21632 (ICE with small model attribute on ia64)
PR target/21632 * config/ia64/ia64.c (ia64_extra_constraint) <'T'>: Use small_addr_symbolic_operand. From-SVN: r99910
This commit is contained in:
parent
6aca9695cf
commit
3d4ee18234
@ -1,3 +1,9 @@
|
||||
2005-05-18 Richard Henderson <rth@redhat.com>
|
||||
|
||||
PR target/21632
|
||||
* config/ia64/ia64.c (ia64_extra_constraint) <'T'>: Use
|
||||
small_addr_symbolic_operand.
|
||||
|
||||
2005-05-18 Jeff Law <law@redhat.com>
|
||||
|
||||
* tree-ssa-forwprop.c (forward_propagate_addr_expr): Do not
|
||||
|
@ -618,8 +618,7 @@ ia64_extra_constraint (rtx value, char c)
|
||||
|
||||
case 'T':
|
||||
/* Symbol ref to small-address-area. */
|
||||
return (GET_CODE (value) == SYMBOL_REF
|
||||
&& SYMBOL_REF_SMALL_ADDR_P (value));
|
||||
return small_addr_symbolic_operand (value, VOIDmode);
|
||||
|
||||
case 'U':
|
||||
/* Vector zero. */
|
||||
|
23
gcc/testsuite/gcc.target/ia64/small-addr-1.c
Normal file
23
gcc/testsuite/gcc.target/ia64/small-addr-1.c
Normal file
@ -0,0 +1,23 @@
|
||||
/* PR target/21632 */
|
||||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2" } */
|
||||
|
||||
struct S
|
||||
{
|
||||
void *s[256];
|
||||
};
|
||||
|
||||
struct T
|
||||
{
|
||||
long t[23];
|
||||
struct S *u;
|
||||
};
|
||||
|
||||
extern struct T __attribute__((model (small))) v;
|
||||
|
||||
void *
|
||||
foo (void)
|
||||
{
|
||||
return v.u->s[0];
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user