gcc/libgcc/config
Georg-Johann Lay cba300dd7d re PR target/49868 (Implement named address space to place/access data in flash memory)
libgcc/
	PR target/49868
	Extend __pgmx semantics to linearize memory.
	* config/avr/t-avr (LIB1ASMFUNCS): Add _xload_1, _movmemx.
	* config/avr/lib1funcs.S (__xload_1): New function.
	(__movmemx_qi, __movmemx_hi): New functions.
	(__xload_2, __xload_3, __xload_4): Rewrite to fit new __pgmx
	semantics.

gcc/
	PR target/49868
	Extend __pgmx semantics to linearize memory.
	* config/avr/avr.md (mov<mode>): Use avr_xload_libgcc_p to
	determine if code comes inline or from libgcc.
	(MOVMEM_r_d:HI): Add "w" to constraint for better preference.
	(movmem_qi, movmem_qi): Set constraint #2 to "n".
	(movmem_qi_elpm, movmem_hi_elpm): Remove insns.
	(movmemx_qi, movmemx_hi): New insns.
	(xload_<mode>_libgcc): Rewrite to new insn condition.
	(xload_<mode>): Remove insns.
	* config/avr/avr.c (avr_out_xload): Rewrite: Only need to handle
	cases that don't satisfy avr_xload_libgcc_p().
	(avr_addr_space_convert): Allow converting in any direction.
	(avr_addr_space_subset_p): Return always true.
	(avr_xload_libgcc_p): Rewrite to fit new __pgmx semantics.
	(avr_emit_movmemhi): Ditto.
	(avr_out_lpm): No need to handle ADDR_SPACE_PGMX any more.
	(avr_out_movmem): Ditto.
	(AVR_SYMBOL_FLAG_PROGMEM): New macro.
	(AVR_SYMBOL_SET_ADDR_SPACE): New macro.
	(AVR_SYMBOL_GET_ADDR_SPACE): New macro.
	(avr_encode_section_info): Encode 'progmem' in symbol flags.
	(output_reload_in_const): Don't zero-extend any 24-bit symbols.

From-SVN: r183058
2012-01-10 09:42:10 +00:00
..
alpha linux-unwind.h: Update copyright years. 2011-12-20 09:46:38 +01:00
arm lib1funcs.asm (udivsi3): Add support for divide functions. 2011-11-16 18:02:12 +00:00
avr re PR target/49868 (Implement named address space to place/access data in flash memory) 2012-01-10 09:42:10 +00:00
bfin Append to HOST_LIBGCC2_CFLAGS in libgcc 2011-11-07 17:14:32 +00:00
c6x Build softfp for c6x 2011-11-08 16:50:37 +00:00
cris Move libgcc2 to toplevel libgcc 2011-11-02 15:23:48 +00:00
epiphany config.gcc (epiphany-*-*): New architecture. 2011-11-05 20:48:23 +00:00
fr30 Move libgcc1 to toplevel libgcc 2011-11-02 15:03:19 +00:00
frv Move libgcc2 to toplevel libgcc 2011-11-02 15:23:48 +00:00
h8300 Append to HOST_LIBGCC2_CFLAGS in libgcc 2011-11-07 17:14:32 +00:00
i386 * config/i386/morestack.S: Simplify CFI opcodes throughout. 2011-12-22 00:09:39 +00:00
ia64 t-ia64 (LIB1ASMFUNCS): Move backward compatibility thunks... 2012-01-06 13:43:03 +00:00
iq2000 Move libgcc2 to toplevel libgcc 2011-11-02 15:23:48 +00:00
libbid Move libgcc_tm_file to toplevel libgcc 2011-11-02 15:26:35 +00:00
lm32 Append to HOST_LIBGCC2_CFLAGS in libgcc 2011-11-07 17:14:32 +00:00
m32c Move libgcc2 to toplevel libgcc 2011-11-02 15:23:48 +00:00
m32r Append to HOST_LIBGCC2_CFLAGS in libgcc 2011-11-07 17:14:32 +00:00
m68k m68k-linux: Implement atomic operations via syscall. 2011-11-26 15:57:37 -08:00
mcore Append to HOST_LIBGCC2_CFLAGS in libgcc 2011-11-07 17:14:32 +00:00
mep Move libgcc2 to toplevel libgcc 2011-11-02 15:23:48 +00:00
microblaze Move libgcc2 to toplevel libgcc 2011-11-02 15:23:48 +00:00
mips Append to HOST_LIBGCC2_CFLAGS in libgcc 2011-11-07 17:14:32 +00:00
mmix Append to HOST_LIBGCC2_CFLAGS in libgcc 2011-11-07 17:14:32 +00:00
moxie Move crtstuff support to toplevel libgcc 2011-11-02 14:33:56 +00:00
pa re PR other/51272 (ld: Unsatisfied symbol "_ITM_registerTMCloneTable" in file /test/gnu/gcc/objdir/) 2011-12-01 02:37:06 +00:00
pdp11 Append to HOST_LIBGCC2_CFLAGS in libgcc 2011-11-07 17:14:32 +00:00
picochip Append to HOST_LIBGCC2_CFLAGS in libgcc 2011-11-07 17:14:32 +00:00
rl78 . 2011-11-29 16:36:43 -05:00
rs6000 rs6000.c (rs6000_emit_prologue): Move update of VRSave mask to save_world() when that is in use. 2011-12-15 15:52:08 +00:00
rx rx-lib.h: Always restrict doubles to the SF type when 64-bit doubles are not enabled. 2011-09-28 13:56:19 +00:00
s390 re PR bootstrap/51734 (Bootstrap fails in libada) 2012-01-04 11:41:06 +00:00
score Move crtstuff support to toplevel libgcc 2011-11-02 14:33:56 +00:00
sh Fix LIB2ADD overrides in libgcc 2011-11-21 16:13:13 +00:00
sparc sol2-unwind.h (sparc64_is_sighandler): Check that the purported sigacthandler address isn't null before dereferencing it. 2012-01-09 18:20:55 +00:00
spu Fix SPU libgcc build 2011-11-11 16:49:22 +00:00
stormy16 Append to HOST_LIBGCC2_CFLAGS in libgcc 2011-11-07 17:14:32 +00:00
v850 Move libgcc1 to toplevel libgcc 2011-11-02 15:03:19 +00:00
vax Move libgcc1 to toplevel libgcc 2011-11-02 15:03:19 +00:00
vms Move crtstuff support to toplevel libgcc 2011-11-02 14:33:56 +00:00
xtensa Move libgcc_tm_file to toplevel libgcc 2011-11-02 15:26:35 +00:00
darwin-64.c Move libgcc2 to toplevel libgcc 2011-11-02 15:23:48 +00:00
darwin-crt3.c Move libgcc2 to toplevel libgcc 2011-11-02 15:23:48 +00:00
darwin-crt-tm.c darwin-crt-tm.c: Correct comments, use correct licence. 2011-11-27 13:57:01 +00:00
gmon-sol2.c
gthr-lynx.h Return gthr-posix.h to libgcc (PR bootstrap/50982) 2011-11-07 16:34:31 +00:00
gthr-rtems.h Move gthr to toplevel libgcc 2011-11-02 15:28:43 +00:00
gthr-vxworks.h Return gthr-posix.h to libgcc (PR bootstrap/50982) 2011-11-07 16:34:31 +00:00
libgcc-glibc.ver Move shlib support to toplevel libgcc 2011-11-02 10:49:46 +00:00
libgcc-libsystem.ver Move shlib support to toplevel libgcc 2011-11-02 10:49:46 +00:00
no-sfp-machine.h soft-fp: Move to ../libgcc. 2011-08-05 15:13:48 +00:00
no-unwind.h
t-crtfm
t-crtstuff-pic Move libgcc2 to toplevel libgcc 2011-11-02 15:23:48 +00:00
t-darwin darwin.h (ENDFILE_SPEC): New. 2011-11-22 13:51:07 +00:00
t-dfprules
t-eh-dw2-dip Makefile.in (UNWIND_H): Remove. 2011-08-05 14:37:48 +00:00
t-fdpbit Makefile.in (FPBIT_FUNCS, [...]): Remove. 2011-08-05 14:53:09 +00:00
t-fixedpoint-gnu-prefix
t-fpbit Makefile.in (FPBIT_FUNCS, [...]): Remove. 2011-08-05 14:53:09 +00:00
t-freebsd-thread Move libgcc2 to toplevel libgcc 2011-11-02 15:23:48 +00:00
t-gnu-prefix
t-libgcc-pic Move libgcc2 to toplevel libgcc 2011-11-02 15:23:48 +00:00
t-libunwind Move libgcc2 to toplevel libgcc 2011-11-02 15:23:48 +00:00
t-libunwind-elf Makefile.in (UNWIND_H): Remove. 2011-08-05 14:37:48 +00:00
t-linux Move shlib support to toplevel libgcc 2011-11-02 10:49:46 +00:00
t-openbsd-thread Append to HOST_LIBGCC2_CFLAGS in libgcc 2011-11-07 17:14:32 +00:00
t-rtems Consistently use t-rtems in libgcc 2011-11-07 17:12:33 +00:00
t-slibgcc Move shlib support to toplevel libgcc 2011-11-02 10:49:46 +00:00
t-slibgcc-darwin Move shlib support to toplevel libgcc 2011-11-02 10:49:46 +00:00
t-slibgcc-elf-ver Move shlib support to toplevel libgcc 2011-11-02 10:49:46 +00:00
t-slibgcc-gld
t-slibgcc-gld-nover Move shlib support to toplevel libgcc 2011-11-02 10:49:46 +00:00
t-slibgcc-hpux Move shlib support to toplevel libgcc 2011-11-02 10:49:46 +00:00
t-slibgcc-libgcc Move shlib support to toplevel libgcc 2011-11-02 10:49:46 +00:00
t-slibgcc-nolc-override Move shlib support to toplevel libgcc 2011-11-02 10:49:46 +00:00
t-slibgcc-sld
t-slibgcc-vms Move shlib support to toplevel libgcc 2011-11-02 10:49:46 +00:00
t-softfp soft-fp: Move to ../libgcc. 2011-08-05 15:13:48 +00:00
t-softfp-excl soft-fp: Move to ../libgcc. 2011-08-05 15:13:48 +00:00
t-softfp-sfdf soft-fp: Move to ../libgcc. 2011-08-05 15:13:48 +00:00
t-softfp-tf soft-fp: Move to ../libgcc. 2011-08-05 15:13:48 +00:00
t-sol2 Use sol2-c[1n].S on more targets 2011-11-04 11:54:17 +00:00
t-stack
t-tls
t-vxworks Append to HOST_LIBGCC2_CFLAGS in libgcc 2011-11-07 17:14:32 +00:00
unwind-dw2-fde-darwin.c Makefile.in (UNWIND_H): Remove. 2011-08-05 14:37:48 +00:00
vxlib-tls.c Move libgcc2 to toplevel libgcc 2011-11-02 15:23:48 +00:00
vxlib.c Move libgcc2 to toplevel libgcc 2011-11-02 15:23:48 +00:00