* config/rl78/rl78-real.md (addqi3_real): Allow volatiles. (addhi3_real): Likewise. Fix [HL+0] syntax. (subqi3_real): Likewise. (subhi3_real): Likewise. (cbranchqi4_real): Likewise. Allow saddr,#imm. (cbranchhi4_real): Likewise. (cbranchhi4_real_inverted): Likewise. (cbranchsi4_real_lt): Likewise. (cbranchsi4_real_ge): Likewise. (cbranchsi4_real_ge): Likewise. * config/rl78/rl78-virt.md (add<mode>3_virt): Likewise. (sub<mode>3_virt): Likewise. (cbranchqi4_virt): Likewise. (cbranchhi4_virt): Likewise. * config/rl78/rl78.c (rl78_print_operand_1): 'p' modifier means always use '[reg+imm]' even when imm is zero. * config/rl78/predicates.md (rl78_volatile_memory_operand): New. (rl78_general_operand): New. (rl78_nonimmediate_operand): New. (rl78_nonfar_operand): Use them. (rl78_nonfar_nonimm_operand): Likewise. (rl78_stack_based_mem): Fix. * config/rl78/constraints.md (Ibqi): New. (IBqi): New. (Wsa): New. (Wsf): New. (Cs1): Fix. * config/rl78/rl78-expand.md (andqi3): Accept volatiles. (iorqi3): Likewise. (xorqi3): Likewise. * config/rl78/rl78-protos.h (rl78_sfr_p): New. * config/rl78/constrains (Qs8): New constraint. * config/rl78/rl78.c (rl78_flags_already_set): New function. * config/rl78/rl78-protos.h (rl78_flags_already_set): New prototype. * config/rl78/rl78-real.md (update_Z): New attribute. Update patterns to set it. (cbranchqi4_real): Call rl78_flags_already_set() to determine if a shorter compare and branch sequence can be used. (cbranchhi4_real): Likewise. (cbranchhi4_real_inverted): Likewise. * config/rl78/predicates.md (uword_operand): Allow symbol_refs. * config/rl78/rl78-c.c (rl78_register_pragmas): Register __near address space. * config/rl78/rl78.c (rl78_get_name_encoding): New. (rl78_option_override): Allow -mes0 only if C. (characterize_address): Support subregs of symbol_refs. (rl78_addr_space_address_mode): Move. Add __near. (rl78_far_p): Likewise. (rl78_addr_space_pointer_mode): Likewise. (rl78_as_legitimate_address): Likewise. (rl78_addr_space_subset_p): Likewise. (rl78_addr_space_convert): Likewise. (rl78_print_operand_1): Support 16-bit addressing of 32-bit symbols with -mes0. (transcode_memory_rtx): Don't copy ES if -mes0. Allow symbol[BC] addressing. (rl78_alloc_physical_registers_op1): Change logic to prefer symbol[BC] addressing. (frodata_section): New. (rl78_asm_init_sections): Initialize it. (rl78_select_section): Put __far readonly symbols in .frodata. (rl78_make_type_far): New. (rl78_insert_attributes): Force all readonly symbols to be __far when -mes0. (rl78_asm_out_integer): New. * config/rl78/rl78.h (ADDR_SPACE_NEAR): New. * config/rl78/rl78.opt (-mes0): New. * config/rl78/rl78.h (ASM_OUTPUT_LABELREF): New. (ASM_OUTPUT_ALIGNED_DECL_COMMON): New. (ASM_OUTPUT_ALIGNED_DECL_LOCAL): New. * config/rl78/rl78-protos.h (rl78_output_labelref): New. (rl78_saddr_p): New. (rl78_output_aligned_common): New. * config/rl78/rl78.c (rl78_output_symbol_ref): Strip encodings. (rl78_handle_saddr_attribute): New. (rl78_handle_naked_attribute): New. (rl78_attribute_table): Add saddr. (rl78_print_operand_1): Don't print '!' on saddr operands. (rl78_print_operand_1): Strip encodings. (rl78_sfr_p): New. (rl78_strip_name_encoding): New. (rl78_attrlist_to_encoding): New. (rl78_encode_section_info): New. (rl78_asm_init_sections): New. (rl78_select_section): New. (rl78_output_labelref): New. (rl78_output_aligned_common): New. (rl78_asm_out_integer): New. (rl78_asm_ctor_dtor): New. (rl78_asm_constructor): New. (rl78_asm_destructor): New. * config/rl78/rl78-real.md (movqi_es): Rename to movqi_to_es. * config/rl78/rl78.c (rl78_expand_epilogue): Update. (transcode_memory_rtx): Update. (rl78_expand_epilogue): Use A_REG instead of 0. Co-Authored-By: Nick Clifton <nickc@redhat.com> From-SVN: r219791
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
aarch64 | Loading commit data... | |
alpha | Loading commit data... | |
arc | Loading commit data... | |
arm | Loading commit data... | |
avr | Loading commit data... | |
bfin | Loading commit data... | |
c6x | Loading commit data... | |
cr16 | Loading commit data... | |
cris | Loading commit data... | |
epiphany | Loading commit data... | |
fr30 | Loading commit data... | |
frv | Loading commit data... | |
h8300 | Loading commit data... | |
i386 | Loading commit data... | |
ia64 | Loading commit data... | |
iq2000 | Loading commit data... | |
lm32 | Loading commit data... | |
m32c | Loading commit data... | |
m32r | Loading commit data... | |
m68k | Loading commit data... | |
mcore | Loading commit data... | |
mep | Loading commit data... | |
microblaze | Loading commit data... | |
mips | Loading commit data... | |
mmix | Loading commit data... | |
mn10300 | Loading commit data... | |
moxie | Loading commit data... | |
msp430 | Loading commit data... | |
nds32 | Loading commit data... | |
nios2 | Loading commit data... | |
nvptx | Loading commit data... | |
pa | Loading commit data... | |
pdp11 | Loading commit data... | |
rl78 | Loading commit data... | |
rs6000 | Loading commit data... | |
rx | Loading commit data... | |
s390 | Loading commit data... | |
sh | Loading commit data... | |
sparc | Loading commit data... | |
spu | Loading commit data... | |
stormy16 | Loading commit data... | |
tilegx | Loading commit data... | |
tilepro | Loading commit data... | |
v850 | Loading commit data... | |
vax | Loading commit data... | |
visium | Loading commit data... | |
vms | Loading commit data... | |
xtensa | Loading commit data... | |
README | Loading commit data... | |
darwin-c.c | Loading commit data... | |
darwin-driver.c | Loading commit data... | |
darwin-f.c | Loading commit data... | |
darwin-ppc-ldouble-patch.def | Loading commit data... | |
darwin-protos.h | Loading commit data... | |
darwin-sections.def | Loading commit data... | |
darwin.c | Loading commit data... | |
darwin.h | Loading commit data... | |
darwin.opt | Loading commit data... | |
darwin10.h | Loading commit data... | |
darwin9.h | Loading commit data... | |
dbx.h | Loading commit data... | |
dbxcoff.h | Loading commit data... | |
dbxelf.h | Loading commit data... | |
default-c.c | Loading commit data... | |
dragonfly-stdint.h | Loading commit data... | |
dragonfly.h | Loading commit data... | |
dragonfly.opt | Loading commit data... | |
elfos.h | Loading commit data... | |
flat.h | Loading commit data... | |
freebsd-nthr.h | Loading commit data... | |
freebsd-spec.h | Loading commit data... | |
freebsd-stdint.h | Loading commit data... | |
freebsd.h | Loading commit data... | |
freebsd.opt | Loading commit data... | |
fused-madd.opt | Loading commit data... | |
g.opt | Loading commit data... | |
glibc-c.c | Loading commit data... | |
glibc-stdint.h | Loading commit data... | |
gnu-user.h | Loading commit data... | |
gnu-user.opt | Loading commit data... | |
gnu.h | Loading commit data... | |
host-darwin.c | Loading commit data... | |
host-darwin.h | Loading commit data... | |
host-hpux.c | Loading commit data... | |
host-linux.c | Loading commit data... | |
host-openbsd.c | Loading commit data... | |
host-solaris.c | Loading commit data... | |
hpux-stdint.h | Loading commit data... | |
hpux11.opt | Loading commit data... | |
initfini-array.h | Loading commit data... | |
kfreebsd-gnu.h | Loading commit data... | |
knetbsd-gnu.h | Loading commit data... | |
kopensolaris-gnu.h | Loading commit data... | |
linux-android.h | Loading commit data... | |
linux-android.opt | Loading commit data... | |
linux-protos.h | Loading commit data... | |
linux.c | Loading commit data... | |
linux.h | Loading commit data... | |
linux.opt | Loading commit data... | |
lynx.h | Loading commit data... | |
lynx.opt | Loading commit data... | |
netbsd-elf.h | Loading commit data... | |
netbsd-elf.opt | Loading commit data... | |
netbsd.h | Loading commit data... | |
netbsd.opt | Loading commit data... | |
newlib-stdint.h | Loading commit data... | |
openbsd-libpthread.h | Loading commit data... | |
openbsd-oldgas.h | Loading commit data... | |
openbsd-stdint.h | Loading commit data... | |
openbsd.h | Loading commit data... | |
openbsd.opt | Loading commit data... | |
print-sysroot-suffix.sh | Loading commit data... | |
rpath.opt | Loading commit data... | |
rtems.h | Loading commit data... | |
rtems.opt | Loading commit data... | |
sol2-c.c | Loading commit data... | |
sol2-clearcap.map | Loading commit data... | |
sol2-clearcapv2.map | Loading commit data... | |
sol2-cxx.c | Loading commit data... | |
sol2-protos.h | Loading commit data... | |
sol2-stubs.c | Loading commit data... | |
sol2.c | Loading commit data... | |
sol2.h | Loading commit data... | |
sol2.opt | Loading commit data... | |
t-darwin | Loading commit data... | |
t-glibc | Loading commit data... | |
t-libunwind | Loading commit data... | |
t-linux | Loading commit data... | |
t-lynx | Loading commit data... | |
t-openbsd | Loading commit data... | |
t-pnt16-warn | Loading commit data... | |
t-rtems | Loading commit data... | |
t-slibgcc | Loading commit data... | |
t-sol2 | Loading commit data... | |
t-sysroot-suffix | Loading commit data... | |
t-vxworks | Loading commit data... | |
t-winnt | Loading commit data... | |
tm-dwarf2.h | Loading commit data... | |
usegas.h | Loading commit data... | |
usegld.h | Loading commit data... | |
vx-common.h | Loading commit data... | |
vxworks-dummy.h | Loading commit data... | |
vxworks.c | Loading commit data... | |
vxworks.h | Loading commit data... | |
vxworks.opt | Loading commit data... | |
vxworksae.h | Loading commit data... | |
winnt-c.c | Loading commit data... | |
x-cflags-O1 | Loading commit data... | |
x-darwin | Loading commit data... | |
x-hpux | Loading commit data... | |
x-linux | Loading commit data... | |
x-openbsd | Loading commit data... | |
x-solaris | Loading commit data... |