Re: [ARM][PR69194] Fix ICE in in extract_insn

2016-01-11 Thread Kyrill Tkachov
Hi Kugan, On 09/01/16 23:08, Kugan wrote: On 09/01/16 07:01, Jakub Jelinek wrote: On Fri, Jan 08, 2016 at 11:43:34AM -0800, Jim Wilson wrote: Here is a smaller simpler testcase. Only the first four args get passed in regs, so the fifth one has address equal to the virtual incoming args reg w

Re: [ARM][PR69194] Fix ICE in in extract_insn

2016-01-09 Thread Kugan
On 09/01/16 07:01, Jakub Jelinek wrote: > On Fri, Jan 08, 2016 at 11:43:34AM -0800, Jim Wilson wrote: >> Here is a smaller simpler testcase. Only the first four args get >> passed in regs, so the fifth one has address equal to the virtual >> incoming args reg which triggers the failure. >> >> ty

Re: [ARM][PR69194] Fix ICE in in extract_insn

2016-01-08 Thread Jakub Jelinek
On Fri, Jan 08, 2016 at 11:43:34AM -0800, Jim Wilson wrote: > Here is a smaller simpler testcase. Only the first four args get > passed in regs, so the fifth one has address equal to the virtual > incoming args reg which triggers the failure. > > typedef __simd128_float32_t float32x4_t; > float32

Re: [ARM][PR69194] Fix ICE in in extract_insn

2016-01-08 Thread Jim Wilson
Here is a smaller simpler testcase. Only the first four args get passed in regs, so the fifth one has address equal to the virtual incoming args reg which triggers the failure. typedef __simd128_float32_t float32x4_t; float32x4_t sub (float32x4_t a, float32x4_t b, float32x4_t c, float32x4_t d, fl

Re: [ARM][PR69194] Fix ICE in in extract_insn

2016-01-08 Thread Jakub Jelinek
On Fri, Jan 08, 2016 at 11:07:17PM +1100, Kugan wrote: > gcc/ChangeLog: > > 2016-01-08 Kugan Vivekanandarajah > Jim Wilson > > PR target/69194 > * config/arm/arm-builtins.c (arm_expand_neon_args): Call >copy_to_mode_reg instead of force_reg. The line should be

Re: [ARM][PR69194] Fix ICE in in extract_insn

2016-01-08 Thread Kyrill Tkachov
On 08/01/16 12:10, Kyrill Tkachov wrote: Hi Kugan, On 08/01/16 12:07, Kugan wrote: neon_vld1 pattern does not accept eliminable registers and due to this, testcase in PR ICE. The problem is in arm_expand_neon_args, in the NEON_ARG_MEMORY case, where it call force_reg. Since an eliminable reg

Re: [ARM][PR69194] Fix ICE in in extract_insn

2016-01-08 Thread Kyrill Tkachov
Hi Kugan, On 08/01/16 12:07, Kugan wrote: neon_vld1 pattern does not accept eliminable registers and due to this, testcase in PR ICE. The problem is in arm_expand_neon_args, in the NEON_ARG_MEMORY case, where it call force_reg. Since an eliminable reg is already a reg, it just returns that valu

[ARM][PR69194] Fix ICE in in extract_insn

2016-01-08 Thread Kugan
neon_vld1 pattern does not accept eliminable registers and due to this, testcase in PR ICE. The problem is in arm_expand_neon_args, in the NEON_ARG_MEMORY case, where it call force_reg. Since an eliminable reg is already a reg, it just returns that value, and we get the wrong result. It needs to