re PR target/35498 (libgomp/testsuite/libgomp.c/atomic-3.c fails on ppc-linux)

PR target/35498
	* config/rs6000/rs6000.c (rs6000_expand_compare_and_swapqhi): Shift
	wdst back after sync_compare_and_swapqhi_internal.

From-SVN: r133024
This commit is contained in:
Jakub Jelinek 2008-03-08 08:30:55 +01:00 committed by Jakub Jelinek
parent 10a97ae6f1
commit 2725b75c33
2 changed files with 9 additions and 0 deletions

View File

@ -1,3 +1,9 @@
2008-03-08 Jakub Jelinek <jakub@redhat.com>
PR target/35498
* config/rs6000/rs6000.c (rs6000_expand_compare_and_swapqhi): Shift
wdst back after sync_compare_and_swapqhi_internal.
2008-03-08 Uros Bizjak <ubizjak@gmail.com>
PR target/22152

View File

@ -13903,6 +13903,9 @@ rs6000_expand_compare_and_swapqhi (rtx dst, rtx mem, rtx oldval, rtx newval)
emit_insn (gen_sync_compare_and_swapqhi_internal (wdst, mask,
oldval, newval, mem));
/* Shift the result back. */
emit_insn (gen_lshrsi3 (wdst, wdst, shift));
emit_move_insn (dst, gen_lowpart (mode, wdst));
}