This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug target/83926] ICE during RTL pass: ira, in elimination_costs_in_insn, at reload1.c:3633


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83926

Peter Bergner <bergner at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2018-01-30
     Ever confirmed|0                           |1

--- Comment #8 from Peter Bergner <bergner at gcc dot gnu.org> ---
A minimal test case that fails with -O[123]:

[bergner@makalu-lp1 PR83926]$ cat pr83926.i
__attribute__ ((altivec(vector__))) long long
foo (__attribute__ ((altivec(vector__))) long long a,
     __attribute__ ((altivec(vector__))) long long b)
{
  return __builtin_vec_div (a, b);
}
[bergner@makalu-lp1 PR83926]$
/home/bergner/gcc/build/gcc-fsf-mainline-pr83926-debug/gcc/xgcc
-B/home/bergner/gcc/build/gcc-fsf-mainline-pr83926-debug/gcc -S -mcpu=power8
-O1 -m32 -mno-fold-gimple pr83926.i
gimple folding of rs6000 builtins has been disabled.
pr83926.i: In function ‘foo’:
pr83926.i:6:1: error: unrecognizable insn:
 }
 ^
(insn 16 15 17 2 (set (reg:DI 127)
        (div:DI (reg:DI 125)
            (reg:DI 126))) "pr83926.i":6 -1
     (nil))
during RTL pass: subreg2
pr83926.i:6:1: internal compiler error: in extract_insn, at recog.c:2304
0x10ddd69f _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
        /home/bergner/gcc/gcc-fsf-mainline-pr83926/gcc/rtl-error.c:108

In reply to Segher's suggestion of doing what the 32-bit DImode divides do,
they end up emitting calls to __divdi3().

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]