> -----Original Message----- > From: Richard Biener [mailto:richard.guent...@gmail.com] > Sent: Thursday, June 13, 2013 3:51 PM > To: Bin Cheng > Cc: gcc-patches@gcc.gnu.org > Subject: Re: [PATCH GCC]Consider NOP_EXPR and CONVERT_EXPR as equal nodes in > operand_equal_p > > On Thu, Jun 13, 2013 at 3:27 AM, Bin Cheng <bin.ch...@arm.com> wrote: > > Hi, > > This is a case of NOP_EXPR and CONVERT_EXPR not compared equal in > > operand_equal_p, resulting in below two nodes are considered different: > > > > NODE 0: > > <convert_expr 0xb72ddb04 > > type <integer_type 0xb74602a0 short int sizes-gimplified public HI > > size <integer_cst 0xb744e7c4 constant 16> > > unit size <integer_cst 0xb744e7e0 constant 2> > > align 16 symtab 0 alias set 4 canonical type 0xb74602a0 > > precision 16 min <integer_cst 0xb744e770 -32768> max <integer_cst > > 0xb744e78c 32767> context <translation_unit_decl 0xb760dd80 D.6120> > > pointer_to_this <pointer_type 0xb7241600>> > > > > arg 0 <ssa_name 0xb72882f8 > > type <integer_type 0xb7460420 long int sizes-gimplified public SI > > size <integer_cst 0xb744e55c constant 32> > > unit size <integer_cst 0xb744e578 constant 4> > > align 32 symtab 0 alias set 5 canonical type 0xb7460420 > > precision 32 min <integer_cst 0xb744e888 -2147483648> max <integer_cst > > 0xb744e8a4 2147483647> context <translation_unit_decl 0xb760dd80 > > D.6120> > > pointer_to_this <pointer_type 0xb74677e0>> > > visiteddef_stmt _23 = *_22; > > > > version 23>> > > > > NODE 1: > > <nop_expr 0xb72e1b54 > > type <integer_type 0xb74602a0 short int sizes-gimplified public HI > > size <integer_cst 0xb744e7c4 constant 16> > > unit size <integer_cst 0xb744e7e0 constant 2> > > align 16 symtab 0 alias set 4 canonical type 0xb74602a0 > > precision 16 min <integer_cst 0xb744e770 -32768> max <integer_cst > > 0xb744e78c 32767> context <translation_unit_decl 0xb760dd80 D.6120> > > pointer_to_this <pointer_type 0xb7241600>> > > > > arg 0 <ssa_name 0xb72882f8 > > type <integer_type 0xb7460420 long int sizes-gimplified public SI > > size <integer_cst 0xb744e55c constant 32> > > unit size <integer_cst 0xb744e578 constant 4> > > align 32 symtab 0 alias set 5 canonical type 0xb7460420 > > precision 32 min <integer_cst 0xb744e888 -2147483648> max <integer_cst > > 0xb744e8a4 2147483647> context <translation_unit_decl 0xb760dd80 > > D.6120> > > pointer_to_this <pointer_type 0xb74677e0>> > > visiteddef_stmt _23 = *_22; > > > > version 23>> > > > > > > This patch fixes the problem. Please refer to > > http://gcc.gnu.org/ml/gcc/2013-05/msg00199.html for more information. > > > > Bootstrap and test on x86 and cortex-a15. Is it OK? > > Ok.
Applied as r200062. Thanks. bin