diff options
author | Segher Boessenkool <segher@kernel.crashing.org> | 2014-07-03 18:39:58 +0200 |
---|---|---|
committer | Segher Boessenkool <segher@gcc.gnu.org> | 2014-07-03 18:39:58 +0200 |
commit | 9e5f78f114729119cc72443a145456e082af2f7c (patch) | |
tree | 8eb1e5f8b2d28704820a8d4674af4aae01c28812 /libgomp | |
parent | 07b6c044833e9ae2a723400435b32612bd9cee2a (diff) | |
download | gcc-9e5f78f114729119cc72443a145456e082af2f7c.zip gcc-9e5f78f114729119cc72443a145456e082af2f7c.tar.gz gcc-9e5f78f114729119cc72443a145456e082af2f7c.tar.bz2 |
Fix the shift patterns, and add test
Firstly, it adds back the split conditions that I accidentally removed.
Without it the dot insns are never generated, or rather, always split
back to a separate compare instruction.
Secondly, the shift amount should be SI always, not GPR, or GCC will
insert a zero-extend at expand time that it cannot get rid of later.
The test tests whether dot-form instructions are generated for both
"dot" and "dot2" cases, that is, with just a CC output or also a GPR
output; for all four basic shifts, with a register amount or an
immediate amount. It also tests for superfluous zero-extends. This
also tests if combine "simplifies" the rotates to right-rotates, which
it shouldn't do anymore.
From-SVN: r212267
Diffstat (limited to 'libgomp')
0 files changed, 0 insertions, 0 deletions