This is the mail archive of the gcc-patches@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]

New bitop builtins causing ICE on 64-bit


Hello,

the changes related to the new bitop builtins are causing ICEs on s390x
(and, according to gcc-testresults, some other 64-bit platforms as well),
when compiling builtin-bitops-1.c.

What appears to happen is that the tree holding the function call to
(e.g.) __builtin_parity has return type 'int', but gets expanded to
mode DImode.  This causes confusion in do_compare_and_jump (which tries
to compare a DImode RTX with an SImode RTX in mode SImode), leading to
an abort in copy_to_mode_reg.

I'm not sure who's at fault here; should expand_builtin make sure
that 'int' trees are expanded to SImode, or is it do_compare_and_jump
which should be able to cope with that situation?


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand
  Linux for S/390 Design & Development
  IBM Deutschland Entwicklung GmbH, Schoenaicher Str. 220, 71032 Boeblingen
  Phone: +49-7031/16-3727   ---   Email: Ulrich.Weigand@de.ibm.com


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