* config/rl78/constraints.md: For each W* constraint, rename to C*
commit563dc27b2b1c9c6854fbb991fcc9c62e511422ae
authordj <dj@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 17 Sep 2013 21:00:59 +0000 (17 21:00 +0000)
committerdj <dj@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 17 Sep 2013 21:00:59 +0000 (17 21:00 +0000)
treeaf3806e18b02ddc8be01b2dade06dd0e006ea385
parentb67002007d0cbbb6a09425164ebc76eaba6d78bf
* config/rl78/constraints.md: For each W* constraint, rename to C*
and create a W* constraint that checks for an optional ES: prefix
pattern also.
* config/rl78/rl78.md (UNS_ES_ADDR): New.
(es_addr): New.  Used to wrap far addresses.
* config/rl78/rl78-protos.h (rl78_es_addr): New.
(rl78_es_base): New.
* config/rl78/rl78.c (rl78_as_legitimate_address): Accept "unspec"
wrapped far addresses.
(rl78_print_operand_1): Unwrap far addresses before processing.
(rl78_lo16): Wrap far addresses in unspecs.
(rl78_es_addr): New.
(rl78_es_base): New.
(insn_ok_now): Check for not-yet-wrapped far addresses.
(transcode_memory_rtx): Properly re-wrap far addresses.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@202666 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/rl78/constraints.md
gcc/config/rl78/rl78-protos.h
gcc/config/rl78/rl78.c
gcc/config/rl78/rl78.md