mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-19 01:50:34 +08:00
simplify-rtx.c (simplify_binary_operation): Simplify contents of CONST.
* simplify-rtx.c (simplify_binary_operation): Simplify contents of CONST. From-SVN: r45447
This commit is contained in:
parent
a1dc9455a3
commit
7d8be4dab0
@ -1,3 +1,8 @@
|
||||
2001-09-06 Richard Henderson <rth@redhat.com>
|
||||
|
||||
* simplify-rtx.c (simplify_binary_operation): Simplify contents
|
||||
of CONST.
|
||||
|
||||
2001-09-06 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
|
||||
|
||||
* config/rs6000/rs6000.c (rs6000_emit_prologue): Fix DWARF2 register
|
||||
|
@ -1275,6 +1275,28 @@ simplify_binary_operation (code, mode, op0, op1)
|
||||
return simplify_gen_binary (AND, mode, op0,
|
||||
gen_rtx_NOT (mode, XEXP (op1, 0)));
|
||||
}
|
||||
|
||||
/* Simplify operations with constants containing embedded offsets. */
|
||||
if (GET_CODE (op0) == CONST)
|
||||
{
|
||||
tem = simplify_binary_operation (code, mode, XEXP (op0, 0), op1);
|
||||
if (tem)
|
||||
{
|
||||
if (CONSTANT_P (op1) && ! CONSTANT_P (tem))
|
||||
tem = gen_rtx_CONST (mode, tem);
|
||||
return tem;
|
||||
}
|
||||
}
|
||||
if (GET_CODE (op1) == CONST)
|
||||
{
|
||||
tem = simplify_binary_operation (code, mode, op0, XEXP (op1, 0));
|
||||
if (tem)
|
||||
{
|
||||
if (CONSTANT_P (op0) && ! CONSTANT_P (tem))
|
||||
tem = gen_rtx_CONST (mode, tem);
|
||||
return tem;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case MULT:
|
||||
|
Loading…
x
Reference in New Issue
Block a user