On 09/05/14 21:20, DJ Delorie wrote:
The key to the msp430 change is that I reviewed every pattern that
used the predicates, and only changed the ones where the pattern was
known to be volatile-safe. For the RL78, the devirtualizer may make a
pattern non-volatile-safe, and many patterns are macr
http://gcc.gnu.org/ml/gcc-patches/2014-04/msg01108.html
Original Message
Subject: [RFC][PATCH] RL78 - Add predicates to reduce code bloat when
accessing volatile memory.
Date: Fri, 18 Apr 2014 21:15:01 +0200
From: Richard Hulme
To: GCC Patches
Hi,
This patch adds
, !240
or a, #32
mov !240, a
Regards,
Richard.
2014-04-18 Richard Hulme
* config/rl78/predicates.md (rl78_volatile_memory_operand): New
(rl78_general_operand): New
(rl78_nonimmediate_operand): New
(rl78_any_operand): Now includes volatile memory
On 15/04/14 22:58, DJ Delorie wrote:
I typically leave the mode off when the operand accepts a CONST_INT as
I've had problems with patterns matching CONST_INTs otherwise, as
CONST_INT rtx's do not have a mode (or have VOIDmode).
(yes, I know gcc is supposed to accomodate that, but like I said, I
Hi,
This patch cleans up some warnings when building due to missing operand
modes.
"trampoline_init" in rl78.md still produces warnings but I'm not
entirely sure about how best to fix that insn and I didn't want to break
anything.
Regards,
Richard
2014-
ycle shorter. It also makes it more like the extendqihi2_real
insn, which isn't especially important, but does mean there's a certain
symmetry about it.
2014-03-28 Richard Hulme
* config/rl78/rl78-real.md (zero_extendqihi2_real):
Minor optimizations to use clrb instruction where poss
Hi,
This patch is a small optimization for the RL78 target that uses the
'clrb' instruction where possible when performing a zero-extend instead
of 'mov'ing a literal #0. This saves a byte on each operation.
Regards,
Richard
2014-03-27 Richard Hulme
* conf