mirror of
https://gcc.gnu.org/git/gcc.git
synced 2024-12-14 14:33:40 +08:00
re PR c/8439 (empty struct causes crash)
PR c/8439 * recog.c (validate_replace_rtx_1) [PLUS]: Simplify only if there is something new to be simplified. From-SVN: r59005
This commit is contained in:
parent
5aad4daaba
commit
45ed7228db
@ -1,3 +1,9 @@
|
||||
2002-11-09 Eric Botcazou <ebotcazou@libertysurf.fr>
|
||||
|
||||
PR c/8439
|
||||
* recog.c (validate_replace_rtx_1) [PLUS]: Simplify only
|
||||
if there is something new to be simplified.
|
||||
|
||||
2002-11-10 H.J. Lu <hjl@gnu.org>
|
||||
|
||||
* calls.c (PUSH_ARGS_REVERSED): Define only if not defined.
|
||||
|
@ -522,10 +522,10 @@ validate_replace_rtx_1 (loc, from, to, object)
|
||||
{
|
||||
case PLUS:
|
||||
/* If we have a PLUS whose second operand is now a CONST_INT, use
|
||||
plus_constant to try to simplify it.
|
||||
simplify_gen_binary to try to simplify it.
|
||||
??? We may want later to remove this, once simplification is
|
||||
separated from this function. */
|
||||
if (GET_CODE (XEXP (x, 1)) == CONST_INT)
|
||||
if (GET_CODE (XEXP (x, 1)) == CONST_INT && XEXP (x, 1) == to)
|
||||
validate_change (object, loc,
|
||||
simplify_gen_binary
|
||||
(PLUS, GET_MODE (x), XEXP (x, 0), XEXP (x, 1)), 1);
|
||||
|
@ -1,3 +1,8 @@
|
||||
2002-11-09 Eric Botcazou <ebotcazou@libertysurf.fr>
|
||||
|
||||
PR c/8439
|
||||
* gcc.dg/testsuite/20021110.c: New test.
|
||||
|
||||
2002-11-10 Mark Mitchell <mark@codesourcery.com>
|
||||
|
||||
* g++.dg/abi/vthunk3.C: Run only on x86.
|
||||
|
10
gcc/testsuite/gcc.dg/20021110.c
Normal file
10
gcc/testsuite/gcc.dg/20021110.c
Normal file
@ -0,0 +1,10 @@
|
||||
/* PR c/8439 */
|
||||
/* Verify that GCC properly handles null increments. */
|
||||
|
||||
struct empty {
|
||||
};
|
||||
|
||||
void foo(struct empty *p)
|
||||
{
|
||||
p++;
|
||||
}
|
Loading…
Reference in New Issue
Block a user