This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
RE: regression due to r187199 explow.c? in target ia64-hp-hpux11.23.
> What is the backtrace ?
#0 0x6db96a0:0 in plus_constant (mode=RFmode, x=0x18, c=1)
#1 0xd7503f0:0 in ia64_expand_tls_address (tls_kind=TLS_MODEL_INITIAL_EXEC,
op0=0x651ac120, op1=0x651ac0f0, orig_op1=0x651ac0f0, addend=0)
#2 0xd750dd0:0 in ia64_expand_move (op0=0x651ac120, op1=0x651ac0f0)
#3 0xd8c6e90:0 in gen_movsi (operand0=0x651ac120, operand1=0x651ac0f0)
#4 0x6ef9900:0 in emit_move_insn_1 (x=0x651ac120, y=0x651ac0f0)
#5 0x6efa6f0:0 in emit_move_insn (x=0x651ac120, y=0x651ac0f0)
#6 0x6dbdd30:0 in copy_to_mode_reg (mode=SImode, x=0x651ac0f0)
#7 0x8ba3c30:0 in maybe_legitimize_operand (icode=CODE_FOR_addsi3, opno=1,
op=0x7fffcf88)
#8 0x8ba46c0:0 in maybe_legitimize_operands (icode=CODE_FOR_addsi3, opno=0,
nops=3, ops=0x7fffcf80)
#9 0x8ba48c0:0 in maybe_gen_insn (icode=CODE_FOR_addsi3, nops=3,
ops=0x7fffcf80)
#10 0x8b6b620:0 in expand_binop_directly (mode=SImode, binoptab=0x40257fdc,
op0=0x651ac0f0, op1=0x653ba4f0, target=0x0, unsignedp=1,
methods=OPTAB_LIB_WIDEN, last=0x0)
#11 0x8b6bcb0:0 in expand_binop (mode=SImode, binoptab=0x40257fdc,
op0=0x651ac0f0, op1=0x653ba4f0, target=0x0, unsignedp=1,
methods=OPTAB_LIB_WIDEN)
#12 0x6f4fa30:0 in expand_expr_real_2 (ops=0x7fffdcd4, target=0x0,
tmode=SImode, modifier=EXPAND_NORMAL)
#13 0x6f68260:0 in expand_expr_real_1 (exp=0x651ab420, target=0x0,
I remember seeing a patch related to this. But could not locate it in the mail archive.
Regards,
Kannan
-----Original Message-----
From: Tristan Gingold [mailto:gingold@adacore.com]
Sent: Wednesday, June 06, 2012 4:05 PM
To: Mailaripillai, Kannan Jeganathan
Cc: gcc@gcc.gnu.org
Subject: Re: regression due to r187199 explow.c? in target ia64-hp-hpux11.23.
On Jun 6, 2012, at 12:27 PM, Mailaripillai, Kannan Jeganathan wrote:
> Hi Tristan,
>
> After applying the patch (correctly) the build proceeded further.
> Now the build hits on another error, while compiling ..../libgomp/parallel.c:
>
> ..../libgomp/parallel.c: In function 'omp_get_ancestor_thread_num':
> ..../libgomp/parallel.c:166:1: internal compiler error: in plus_constant, at explow.c:88
> omp_get_ancestor_thread_num (int level)
> ^
>
> Is there another patch to solve this issue?
> Basically, my bootstrap build (ia64-hpux-11.23) is failing due to this.
I haven't tried to build for ia64-hpux, only for ia64-openvms (which doesn't support omp).
What is the backtrace ?
Tristan.
>
> Regards,
> Kannan
>
> -----Original Message-----
> From: Mailaripillai, Kannan Jeganathan
> Sent: Wednesday, June 06, 2012 2:15 PM
> To: 'Tristan Gingold'
> Cc: gcc@gcc.gnu.org
> Subject: RE: regression due to r187199 explow.c? in target ia64-hp-hpux11.23.
>
> Hi Tristan,
>
>> how result can be used uninitialized as it is assigned just before
>
> I am sorry. My mistake. I had replaced expand_expr_addr_expr_1 with
> convert_memory_address_addr_space. I overlooked the patch as
>
> - result = expand_expr_addr_expr_1 (inner, subtarget, tmode, modifier, as);
> + result = convert_memory_address_addr_space (tmode, result, as);
>
> Hence replaced expand_expr_addr_expr_1 with convert_memory_address_addr_space.
>
> Regards,
> Kannan
>
> -----Original Message-----
> From: Tristan Gingold [mailto:gingold@adacore.com]
> Sent: Wednesday, June 06, 2012 1:17 PM
> To: Mailaripillai, Kannan Jeganathan
> Cc: gcc@gcc.gnu.org
> Subject: Re: regression due to r187199 explow.c? in target ia64-hp-hpux11.23.
>
>
> On Jun 6, 2012, at 9:10 AM, Mailaripillai, Kannan Jeganathan wrote:
>
>> Hi Tristan,
>>
>>>> http://gcc.gnu.org/ml/gcc-patches/2012-05/msg00970.html
>>> I have not applied this patch. I will give it a try.
>>
>> This patch is not fixing the issue.
>> Moreover, on compiling expr.c I get this warning:
>> ..../gcc/expr.c: In function 'expand_expr_addr_expr_1':
>> ..../gcc/expr.c:7603:10: warning: 'result' may be used uninitialized in
>> this function.
>
> That's looking weird. I don't see how result can be used uninitialized as it is assigned just before.
>
> Tristan.
>
>> For the same testcase, now the ICE is happening in different place (while
>> compiling the same line of code):
>> test.c: In function 'main':
>> test.c:5:7: internal compiler error: Segmentation fault
>> boo (&iarr[1]);
>> ^
>>
>> ---- Stack trace got through gdb:
>>
>> Program received signal SIGSEGV, Segmentation fault
>> si_code: 2 - SEGV_ACCERR - Invalid Permissions for object.
>> 0x6c9dd60:1 in adjust_address_1 (memref=0x6544a140, mode=SImode, offset=-4,
>> validate=1, adjust=1)
>> (gdb) bt
>> #0 0x6c9dd60:1 in adjust_address_1 (memref=0x6544a140, mode=SImode,
>> offset=-4, validate=1, adjust=1)
>> #1 0x957a110:0 in gen_lowpart_general (mode=SImode, x=0x6544a140)
>> #2 0x6ee33e0:0 in convert_modes (mode=SImode, oldmode=DImode, x=0x6544a140,
>> unsignedp=-1)
>> #3 0x6dbc600:0 in convert_memory_address_addr_space (to_mode=SImode,
>> x=0x6544a140, as=0 '\000')
>> #4 0x6f39a60:0 in expand_expr_addr_expr_1 (exp=0x6544a140, target=0x0,
>> tmode=SImode, modifier=EXPAND_NORMAL, as=0 '\000')
>> #5 0x6f3ad50:0 in expand_expr_addr_expr (exp=0x65453678, target=0x0,
>> tmode=SImode, modifier=EXPAND_NORMAL)
>> #6 0x6f67f90:0 in expand_expr_real_1 (exp=0x65453678, target=0x0,
>> tmode=VOIDmode, modifier=EXPAND_NORMAL, alt_rtl=0x0)
>> #7 0x6f3c700:0 in expand_expr_real (exp=0x65453678, target=0x0,
>> tmode=VOIDmode, modifier=EXPAND_NORMAL, alt_rtl=0x0)
>> #8 0x5d4dda0:0 in expand_normal (exp=0x65453678)
>> #9 0x5d8dce0:0 in precompute_register_parameters (num_actuals=1,
>> args=0x7fffd8a0, reg_parm_seen=0x7fffdc88)
>> #10 0x5da2160:0 in expand_call (exp=0x6544a258, target=0x0, ignore=1)
>> #11 0x6f637c0:0 in expand_expr_real_1 (exp=0x6544a258, target=0x0,
>> tmode=VOIDmode, modifier=EXPAND_NORMAL, alt_rtl=0x0)
>> #12 0x5f6d760:0 in expand_call_stmt (stmt=0x6545c0b0)
>> #13 0x5f6da90:0 in expand_gimple_stmt_1 (stmt=0x6545c0b0)
>>
>> Testcase, GCC configuration, etc in the original post:
>> http://gcc.gnu.org/ml/gcc/2012-05/msg00371.html
>>
>> Regards,
>> Kannan
>>
>> -----Original Message-----
>> From: Mailaripillai, Kannan Jeganathan
>> Sent: Wednesday, May 30, 2012 2:44 PM
>> To: 'Tristan Gingold'
>> Cc: gcc@gcc.gnu.org
>> Subject: RE: regression due to r187199 explow.c? in target ia64-hp-hpux11.23.
>>
>> Thanks Tristan. I have not applied this patch. I will give it a try.
>>
>> Regards,
>> Kannan
>>
>> -----Original Message-----
>> From: Tristan Gingold [mailto:gingold@adacore.com]
>> Sent: Wednesday, May 30, 2012 1:46 PM
>> To: Mailaripillai, Kannan Jeganathan
>> Cc: gcc@gcc.gnu.org
>> Subject: Re: regression due to r187199 explow.c? in target ia64-hp-hpux11.23.
>>
>> Hi,
>>
>> did you try with this patch:
>>
>> http://gcc.gnu.org/ml/gcc-patches/2012-05/msg00970.html
>>
>> Tristan.
>>
>> On May 29, 2012, at 12:23 PM, Mailaripillai, Kannan Jeganathan wrote:
>>
>>> Hi,
>>>
>>> This modification (assertion) is causing failure in ia64-hp-hpux11.23:
>>>
>>> r187199 | rsandifo | 2012-05-05 10:41:49 -0700 (Sat, 05 May 2012) | 247 lines
>>> Changed paths:
>>> M /trunk/gcc/explow.c
>>> * explow.c (plus_constant, plus_constant_mode): Likewise. Assert that
>>> the mode is sensible.
>>>
>>> Haven't analyzed the issue. Thought of checking, if it is a known issue.
>>>
>>> Error:
>>> ------
>>> test.c: In function 'main':
>>> test.c:5:7: internal compiler error: in plus_constant, at explow.c:88
>>> boo (&iarr[1]);
>>> ^
>>>
>>> Testcase (test.c):
>>> ------------------
>>> int iarr[2];
>>> extern int boo(int *);
>>>
>>> int main(void) {
>>> boo (&iarr[1]);
>>> return 0;
>>> }
>>>
>>> Compilation command:
>>> --------------------
>>> gcc -c test.c
>>> ^ This compiler is built out of revision 187199 (trunk). Error attached above.
>>>
>>> Configuration:
>>> --------------
>>> COLLECT_GCC=.../build-ia64-hp-hpux11.23-trunk/obj_gcc/gcc/xgcc
>>> Target: ia64-hp-hpux11.23
>>> Configured with: ...gcc/src/configure --host=ia64-hp-hpux11.23
>>> --build=ia64-hp-hpux11.23 --prefix=.../gcc-ia64-hp-hpux11.23-trunk \
>>> --with-local-prefix=.../gcc-ia64-hp-hpux11.23-trunk --disable-nls \
>>> --with-gmp=.../ia64-hp-hpux11.23 --with-mpfr=.../ia64-hp-hpux11.23 \
>>> --with-mpc=.../ia64-hp-hpux11.23 --with-libelf=.../ia64-hp-hpux11.23 \
>>> --disable-libmudflap --enable-libunwind-exceptions SED=/usr/bin/sed \
>>> --enable-languages=c,c++,fortran
>>> Thread model: posix
>>> gcc version 4.8.0 20120505 (experimental) (GCC)
>>> COLLECT_GCC_OPTIONS='-B' '/.../build-ia64-hp-hpux11.23-trunk/obj_gcc/gcc/' '-c' '-v'
>>> GNU C (GCC) version 4.8.0 20120505 (experimental) (ia64-hp-hpux11.23)
>>> compiled by GNU C version 4.5.1, GMP version 4.2.4, MPFR version 2.4.1, MPC version 0.8
>>> GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
>>>
>>> Regards,
>>> Kannan
>>>
>>
>