Commit 91767ed1 by Max Filippov Committed by Max Filippov

re PR target/65730 (xtensa: ICE in libstdc++-v3/include/bits/atomic_base.h: In…

re PR target/65730 (xtensa: ICE in libstdc++-v3/include/bits/atomic_base.h: In function ‘bool std::atomic_flag_test_and_set_explicit(std::__atomic_flag_base*, std::memory_order)’)

Fix PR target/65730

2015-05-20  Max Filippov  <jcmvbkbc@gmail.com>
gcc/
	* config/xtensa/xtensa.c (init_alignment_context): Replace MULT
	by BITS_PER_UNIT with ASHIFT by exact_log2 (BITS_PER_UNIT).

From-SVN: r223452
parent eb3243e8
2015-05-20 Max Filippov <jcmvbkbc@gmail.com>
* config/xtensa/xtensa.c (init_alignment_context): Replace MULT
by BITS_PER_UNIT with ASHIFT by exact_log2 (BITS_PER_UNIT).
2015-05-20 Jeff Law <law@redhat.com> 2015-05-20 Jeff Law <law@redhat.com>
* tree-ssa-threadupdate.c (mark_threaded_blocks): Properly * tree-ssa-threadupdate.c (mark_threaded_blocks): Properly
......
...@@ -1461,8 +1461,9 @@ init_alignment_context (struct alignment_context *ac, rtx mem) ...@@ -1461,8 +1461,9 @@ init_alignment_context (struct alignment_context *ac, rtx mem)
if (ac->shift != NULL_RTX) if (ac->shift != NULL_RTX)
{ {
/* Shift is the byte count, but we need the bitcount. */ /* Shift is the byte count, but we need the bitcount. */
ac->shift = expand_simple_binop (SImode, MULT, ac->shift, gcc_assert (exact_log2 (BITS_PER_UNIT) >= 0);
GEN_INT (BITS_PER_UNIT), ac->shift = expand_simple_binop (SImode, ASHIFT, ac->shift,
GEN_INT (exact_log2 (BITS_PER_UNIT)),
NULL_RTX, 1, OPTAB_DIRECT); NULL_RTX, 1, OPTAB_DIRECT);
ac->modemask = expand_simple_binop (SImode, ASHIFT, ac->modemask = expand_simple_binop (SImode, ASHIFT,
GEN_INT (GET_MODE_MASK (mode)), GEN_INT (GET_MODE_MASK (mode)),
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment