]> git.ipfire.org Git - thirdparty/gcc.git/commit - gcc/config/rs6000/rs6000.c
rs6000.c (mask_operand): Rewrite without bit-shifting loop.
authorAlan Modra <amodra@bigpond.net.au>
Mon, 27 Aug 2001 15:52:35 +0000 (15:52 +0000)
committerAlan Modra <amodra@gcc.gnu.org>
Mon, 27 Aug 2001 15:52:35 +0000 (01:22 +0930)
commitc50594233b1cf896e3383fd4f2988819d2bba440
tree50af4f9077687a22c24751668bbbe8a3bd6ee6bd
parentc34cce440404a66643a1cf32388fa5c40f7d92d1
rs6000.c (mask_operand): Rewrite without bit-shifting loop.

* config/rs6000/rs6000.c (mask_operand): Rewrite without
bit-shifting loop.
(mask64_operand): Likewise.
(rldic_operand): Delete.
(includes_lshift64_p): Delete.
(includes_rldic_lshift_p): New function.
(includes_rldicr_lshift_p): New function.
(print_operand): Don't call rldic_operand in case 'W'.
* config/rs6000/rs6000-protos.h (rldic_operand): Remove.
(includes_lshift64_p): Remove.
(includes_rldic_lshift_p): Declare.
(includes_rldicr_lshift_p): Declare.
* config/rs6000/rs6000.h (PREDICATE_CODES): Remove rldic_operand.
* config/rs6000/rs6000.md <ashldi3_internal 64 bit patterns>:
Replace match_operand rldic_operand predicate with
const_int_operand.  Replace includes_lshift64_p condition with
includes_rldic_lshift_p.
<ashldi3_internal 64 bit rldicr patterns>: New.

From-SVN: r45192
gcc/ChangeLog
gcc/config/rs6000/rs6000-protos.h
gcc/config/rs6000/rs6000.c
gcc/config/rs6000/rs6000.h
gcc/config/rs6000/rs6000.md