This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/49489] [4.7 Regression] gcc.c-torture/execute/builtin-bitops-1.c fails on x86_64-linux
- From: "jakub at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Tue, 21 Jun 2011 16:26:23 +0000
- Subject: [Bug middle-end/49489] [4.7 Regression] gcc.c-torture/execute/builtin-bitops-1.c fails on x86_64-linux
- Auto-submitted: auto-generated
- References: <bug-49489-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49489
--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-06-21 16:26:03 UTC ---
Author: jakub
Date: Tue Jun 21 16:25:57 2011
New Revision: 175265
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=175265
Log:
PR middle-end/49489
* builtins.c (expand_builtin_unop): Call expand_unop with 0 as
unsignedp argument instead of 1 for clrsb_optab.
(fold_builtin_bitop): Fix masking for width > HOST_BITS_PER_WIDE_INT
and < 2 * HOST_BITS_PER_WIDE_INT. Optimize BUILT_IN_CLRSB*.
(fold_builtin_1): Call fold_builtin_binop for BUILT_IN_CLRSB*.
* optabs.c (widen_leading): Call widen_operand and expand_unop
with 0 as unsignedp argument instead of 1 for clrsb_optab.
(expand_unop): Subtract difference of mode sizes also for
clrsb_optab.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/builtins.c
trunk/gcc/optabs.c