summaryrefslogtreecommitdiffstats
path: root/libgcc
Commit message (Collapse)AuthorAgeFilesLines
...
* gcc/uweigand2012-02-233-6/+12
| | | | | | | | | | | | | | | | | | * acinclude.m4: Use HAVE_INITFINI_ARRAY_SUPPORT instead of HAVE_INITFINI_ARRAY to work around namespace pollution in certain versions of newlib system headers. * config.in: Regenerate. * configure: Regenerate. * config/initfini-array.h: Use HAVE_INITFINI_ARRAY_SUPPORT instead of HAVE_INITFINI_ARRAY. libgcc/ * config/ia64/crtbegin.S: Use HAVE_INITFINI_ARRAY_SUPPORT instead of HAVE_INITFINI_ARRAY. * config/ia64/crtend.S: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@184503 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libstdc++/52300ktietz2012-02-202-0/+11
| | | | | | | * gthr.h (GTHREAD_USE_WEAK): Define as zero for mingw. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@184406 138bc75d-0d04-0410-961f-82ee72b054a4
* * config.host (i686-*-mingw*): Set md_unwind_header only for dw2-modektietz2012-02-202-1/+6
| | | | | | | | to w32-unwind.h header. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@184405 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/rsandifo2012-02-194-17/+10
| | | | | | | | | | | | | | | | | * config/mips/mips.c (mips_need_mips16_rdhwr_p): New variable. (mips_get_tp): Set it. Record that __mips16_rdhwr binds locally. (mips_start_unique_function, mips_output_mips16_rdhwr) (mips_code_end): New functions. (TARGET_ASM_CODE_END): Define. libgcc/ * config.host (mips64*-*-linux*, mipsisa64*-*-linux*) (mips*-*-linux*): Remove t-slibgcc-libgcc. * config/mips/t-mips16 (LIB1ASMFUNCS): Remove __mips16_rdhwr. * config/mips/mips16.S (__mips16_rdhwr): Delete. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@184380 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/rsandifo2012-02-192-9/+21
| | | | | | | | | | | * config/mips/mips.c (mips16_build_call_stub): Add CFI information to stubs with non-sibling calls. libgcc/ * config/mips/mips16.S (CALL_STUB_RET): Add CFI information. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@184379 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libitm/52220iains2012-02-162-2/+6
| | | | | | | | * config/darwin-crt-tm.c: Correct typo. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@184305 138bc75d-0d04-0410-961f-82ee72b054a4
* libitm/pmarlier2012-02-152-0/+50
| | | | | | | | | | | | | | | | | | | | 2012-02-15 Iain Sandoe <iains@gcc.gnu.org> Patrick Marlier <patrick.marlier@gmail.com> PR libitm/52220 * alloc_cpp.cc: No dummy definitions for darwin. * eh_cpp.cc: Likewise. libgcc/ 2012-02-15 Iain Sandoe <iains@gcc.gnu.org> Patrick Marlier <patrick.marlier@gmail.com> PR libitm/52220 * config/darwin-crt-tm.c: Generate dummy functions. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@184293 138bc75d-0d04-0410-961f-82ee72b054a4
* 2012-02-15 Iain Sandoe <iains@gcc.gnu.org>pmarlier2012-02-152-25/+61
| | | | | | | | | | | | | Patrick Marlier <patrick.marlier@gmail.com> PR libitm/52042 * config/darwin-crt-tm.c (getTMCloneTable): New function. (__doTMRegistrations): Call it. (__doTMdeRegistrations): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@184281 138bc75d-0d04-0410-961f-82ee72b054a4
* libgcc/gjl2012-02-152-0/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR target/52261 * config/avr/lib1funcs.S (__prologue_saves__): Handle AVR_XMEGA (__epilogue_restores__): Ditto. gcc/ PR target/52261 * config/avr/avr-devices.c (avr_arch_types): Add avrxmega2, avrxmega4, avrxmega5, avrxmega6, avrxmega7. Rewrite initializers for .macro. * config/avr/avr-mcus.def (AVR_MCU): Add known MCUs: avrxmega2: atxmega16a4, atxmega16d4, atxmega16x1, atxmega32a4 atxmega32d4, atxmega32x1. avrxmega4: atxmega64a3, atxmega64d3. avrxmega5: atxmega64a1, atxmega64a1u. avrxmega6: atxmega128a3, atxmega128d3, atxmega192a3, atxmega192d3, atxmega256a3, atxmega256a3b, atxmega256a3bu, atxmega256d3. avrxmega7: atxmega128a1, atxmega128a1u. * config/avr/multilib.h: Regenerate. * config/avr/t-multilib: Regenerate. * config/avr/avr-tables.opt: Regenerate. * config/avr/avr.h (enum avr_arch): Add: ARCH_AVRXMEGA2, ARCH_AVRXMEGA4, ARCH_AVRXMEGA5, ARCH_AVRXMEGA6, ARCH_AVRXMEGA7. (struct base_arch_s): Rename reserved to xmega_p. Rename reserved2 to have_rampd. (AVR_XMEGA): New define. (AVR_HAVE_RAMPD, AVR_HAVE_RAMPX, AVR_HAVE_RAMPY): New defines. (AVR_HAVE_RAMPZ): Change definition to fit xmega. * config/avr/predicates.md (io_address_operand): Take into account SFR offset. (low_io_address_operand): Ditto. (high_io_address_operand): Ditto. * config/avr/avr.md (isa): Add alternatives no_xmega, xmega. (enabled, movhi_sp_r): Use them. * config/avr/avr-c.c (avr_cpu_cpp_builtins): Use cpp_define_formatted to built-in define __AVR_ARCH__. (__AVR_XMEGA__): New built-in define. (__AVR_HAVE_RAMPD__): New built-in define. (__AVR_HAVE_RAMPX__): New built-in define. (__AVR_HAVE_RAMPY__): New built-in define. (__AVR_HAVE_RAMPZ__): Change condition when to built-in define it. * config/avr/avr.c (avr_addr_t): Add ccp, rampd, rampx, rampy. (avr_option_override): Initialize them. (sreg_rtx, rampd_rtx, rampx_rtx, rampy_rtx): New GTY rtx. (avr_init_expanders): Initialize them. No more block several calls. (emit_push_sfr): New static function. (avr_prologue_setup_frame): Use it to push SREG, RAMPD/X/Y/Z as needed. Handle AVR_XMEGA. (expand_epilogue): Handle AVR_XMEGA. Pop RAMPD/X/Y/Z as needed. (avr_print_operand): Print addreeses as symbols for RAMPX, RAMPY, RAMPD, CCP. (output_movhi): Handle AVR_XMEGA when writing to SP. (avr_out_movhi_mr_r_xmega): New static function. (out_movhi_mr_r): Forward to avr_out_movhi_mr_r_xmega for AVR_XMEGA. (avr_file_start): Print symbol defines for __RAMPX__, __RAMPY__, __RAMPD__, __CCP__ as needed. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@184269 138bc75d-0d04-0410-961f-82ee72b054a4
* PR target/51921ebotcazou2012-02-152-4/+28
| | | | | | | | | | PR target/52205 * config/sparc/sol2-unwind.h (sparc64_is_sighandler): Add support for Solaris 11 and slightly reformat. (sparc_is_sighandler): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@184255 138bc75d-0d04-0410-961f-82ee72b054a4
* Add ports for TILE-Gx and TILEPro.walt2012-02-1416-0/+1486
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | . * MAINTAINERS (tilegx port): Add myself. (tilepro port): Add myself. contrib * config-list.mk (LIST): Add tilegx-linux-gnu and tilepro-linux-gnu. * gcc_update (gcc/config/tilegx/mul-tables.c): New dependencies. (gcc/config/tilepro/mul-tables.c): New dependencies. gcc * config.gcc: Handle tilegx and tilepro. * configure.ac (gcc_cv_as_dwarf2_debug_line): Enable test for tilegx and tilepro. Add HAVE_AS_TLS check for tilegx and tilepro. * configure: Regenerate. * doc/contrib.texi: Add Mat Hostetter and self. * doc/extend.texi (TILE-Gx Built-in Functions): New node. Document instruction intrinsics and network accessing intrinsics. (TILEPro Built-in Functions): New node. Document instruction intrinsics and network accessing intrinsics. * doc/install.texi (Specific, tilegx-*-linux*): Document it. (Specific, tilepro-*-linux*): Likewise. * doc/invoke.texi (TILE-Gx Options): New section. (TILEPro Options): New section. * doc/md.texi (TILE-Gx): New section. (TILEPro): New section. * common/config/tilegx: New directory for tilegx. * common/config/tilepro: New directory for tilepro. * config/tilegx: New directory for tilegx. * config/tilepro: New directory for tilepro. gcc/testsuite * g++.dg/other/PR23205.C: Disable test on tile. * g++.dg/other/pr23205-2.C: Disable test on tile. * gcc.dg/20020312-2.c: Add a condition for __tile__. * gcc.dg/20040813-1.c: Disable test on tile. * gcc.dg/lower-subreg-1.c: Disable test on tilegx. * gcc.misc-tests/linkage.exp: Handle tilegx. libcpp * configure.ac: Require 64-bit hwint for tilegx and tilepro. * configure: Regenerate. libgcc * config.host: Handle tilegx and tilepro. * config/tilegx: New directory for tilegx. * config/tilepro: New directory for tilepro. libgomp * configure.tgt: Handle tilegx and tilepro. * config/linux/tile: New directory for tilegx and tilepro. Added: trunk/gcc/common/config/tilegx/tilegx-common.c trunk/gcc/common/config/tilepro/tilepro-common.c trunk/gcc/config/tilegx/constraints.md trunk/gcc/config/tilegx/linux.h trunk/gcc/config/tilegx/mul-tables.c trunk/gcc/config/tilegx/predicates.md trunk/gcc/config/tilegx/sync.md trunk/gcc/config/tilegx/t-tilegx trunk/gcc/config/tilegx/tilegx-builtins.h trunk/gcc/config/tilegx/tilegx-c.c trunk/gcc/config/tilegx/tilegx-generic.md trunk/gcc/config/tilegx/tilegx-modes.def trunk/gcc/config/tilegx/tilegx-multiply.h trunk/gcc/config/tilegx/tilegx-protos.h trunk/gcc/config/tilegx/tilegx.c trunk/gcc/config/tilegx/tilegx.h trunk/gcc/config/tilegx/tilegx.md trunk/gcc/config/tilegx/tilegx.opt trunk/gcc/config/tilepro/constraints.md trunk/gcc/config/tilepro/gen-mul-tables.cc trunk/gcc/config/tilepro/linux.h trunk/gcc/config/tilepro/mul-tables.c trunk/gcc/config/tilepro/predicates.md trunk/gcc/config/tilepro/t-tilepro trunk/gcc/config/tilepro/tilepro-builtins.h trunk/gcc/config/tilepro/tilepro-c.c trunk/gcc/config/tilepro/tilepro-generic.md trunk/gcc/config/tilepro/tilepro-modes.def trunk/gcc/config/tilepro/tilepro-multiply.h trunk/gcc/config/tilepro/tilepro-protos.h trunk/gcc/config/tilepro/tilepro.c trunk/gcc/config/tilepro/tilepro.h trunk/gcc/config/tilepro/tilepro.md trunk/gcc/config/tilepro/tilepro.opt trunk/libgcc/config/tilegx/sfp-machine.h trunk/libgcc/config/tilegx/sfp-machine32.h trunk/libgcc/config/tilegx/sfp-machine64.h trunk/libgcc/config/tilegx/t-crtstuff trunk/libgcc/config/tilegx/t-softfp trunk/libgcc/config/tilegx/t-tilegx trunk/libgcc/config/tilepro/atomic.c trunk/libgcc/config/tilepro/atomic.h trunk/libgcc/config/tilepro/linux-unwind.h trunk/libgcc/config/tilepro/sfp-machine.h trunk/libgcc/config/tilepro/softdivide.c trunk/libgcc/config/tilepro/softmpy.S trunk/libgcc/config/tilepro/t-crtstuff trunk/libgcc/config/tilepro/t-tilepro trunk/libgomp/config/linux/tile/futex.h Modified: trunk/MAINTAINERS trunk/contrib/config-list.mk trunk/contrib/gcc_update trunk/gcc/config.gcc trunk/gcc/configure trunk/gcc/configure.ac trunk/gcc/doc/contrib.texi trunk/gcc/doc/extend.texi trunk/gcc/doc/install.texi trunk/gcc/doc/invoke.texi trunk/gcc/doc/md.texi trunk/gcc/testsuite/g++.dg/other/PR23205.C trunk/gcc/testsuite/g++.dg/other/pr23205-2.C trunk/gcc/testsuite/gcc.dg/20020312-2.c trunk/gcc/testsuite/gcc.dg/20040813-1.c trunk/gcc/testsuite/gcc.dg/lower-subreg-1.c trunk/gcc/testsuite/gcc.misc-tests/linkage.exp trunk/libcpp/configure trunk/libcpp/configure.ac trunk/libgcc/config.host trunk/libgomp/configure.tgt git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@184203 138bc75d-0d04-0410-961f-82ee72b054a4
* libgcc/redi2012-02-072-3/+43
| | | | | | | | | | | | | | | | | | | | PR libstdc++/51296 PR libstdc++/51906 * gthr-posix.h: Allow static initializer macros to be disabled. (__gthrw_pthread_cond_init): Define weak reference unconditionally. libstdc++-v3/ PR libstdc++/51296 * include/std/mutex (__mutex_base::~__mutex_base): Declare noexcept. * src/c++11/condition_variable.cc (condition_variable): Use macro for initializer function. PR libstdc++/51906 * config/os/bsd/darwin/os_defines.h: Disable static initializer for recursive mutexes. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@183955 138bc75d-0d04-0410-961f-82ee72b054a4
* libgcc/rsandifo2012-02-054-6/+12
| | | | | | | | | | | | 2012-02-05 Chung-Lin Tang <cltang@codesourcery.com> * config.host (mips64*-*-linux*, mipsisa64*-*-linux*, mips*-*-linux*): Add t-slibgcc-libgcc to tmake_file. * config/mips/libgcc-mips16.ver: Revert previous patch. * config/mips/mips16.S (__mips16_rdhwr): Hide. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@183912 138bc75d-0d04-0410-961f-82ee72b054a4
* Adding GCC port for National Semicondutor's CR16 architecturejayants2012-02-0211-0/+2645
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@183832 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/rs6000/t-linux64: Delete. Move..amodra2012-01-244-6/+11
| | | | | | | | | * config/rs6000/t-ppc64-fp: ..softfp_wrap defines to here.. * config/rs6000/t-linux: ..and libgcc flags to here. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@183491 138bc75d-0d04-0410-961f-82ee72b054a4
* 2012-01-22 Douglas B Rupp <rupp@gnat.com>rupp2012-01-233-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * <toplevel>/config/mh-interix: Remove as unneeded. * <toplevel>/config/picflag.m4 (i[[34567]]86-*-interix3*): Change triplet to i[[34567]]86-*-interix[[3-9]]*. * <toplevel>/configure.ac: Remove reference to mh-interix. * <toplevel>/configure: Regenerate. * <toplevel>/libada/configure: Regenerate. * <toplevel>libgcc/config.host (i[34567]86-*-interix3*): Change triplet to i[34567]86-*-interix[3-9]*. * <toplevel>/libgcc/configure: Regenerate. * <toplevel>/liberty/configure: Regenerate. * config.gcc: (i[34567]86-*-interix3*): Remove from obsolete configurations. Change triplet to i[34567]86-*-interix[3-9]*. (extra_options) interix.opt -> i386/interix.opt" (extra_objs):Add winnt-stubs.o * configure.ac: Add interix to target_os .comm on PE check. * configure: Regenerate. * config/interix3.h: Delete and move bits to.. * config/interix.h: Delete and move bits to.. * config/i386/i386-interix3.h: Delete and move bits to.. * config/i386/i386-interix.h: ..here. (TARGET_CPU_DEFAULT): Remove redefinition. (TARGET_ASM_CONSTRUCTOR): Undefine. (SUBTARGET_SWITCHES): Define for ms-bitfields. (TARGET_OS_CPP_BUILTINS): Remove __OPENNT. Add __declspec. (PTRDIFF_TYPE): Define. (LONG_DOUBLE_TYPE_SIZE): Define. (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Define. (SUBTARGET_OVERRIDE_OPTIONS): Remove. (TARGET_SECTION_TYPE_FLAGS): Define. (ASM_DECLARE_FUNCTION_NAME): Define. (ASM_OUTPUT_EXTERNAL): Define. (ASM_OUTPUT_EXTERNAL_LIBCALL): Define. (ASM_OUTPUT_ALIGNED_BSS): Define. (PCC_BITFIELD_TYPE_MATTERS): Define. (USE_CONST_SECTION): Define. (SUBTARGET_ENCODE_SECTION_INFO): Remove. (TARGET_ASM_FUNCTION_RODATA_SECTION): Remove. (SUPPORTS_ONE_ONLY): Remove. (I386_PE_STRIP_ENCODING): Define. * config/interix.opt: Delete and move bits to.. * config/i386/interix.opt: ..here. New. (mpe-aligned-commons): Add. * config/i386/t-interix: Add copyright header. (winnt-stubs.o): Add rule. * testsuite/gcc.dg/builtins-config.h: (HAVE_C99_RUNTIME): Do not define for Interix. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@183406 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/i386/morestack.S: Simplify CFI opcodes throughout.ian2012-01-181-1/+5
| | | | | | | (Forgot to commit ChangeLog entry with last change to morestack.S.) git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@183281 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/rsandifo2012-01-154-1/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2012-01-08 Chung-Lin Tang <cltang@codesourcery.com> Richard Sandiford <rdsandiford@googlemail.com> * config/mips/mips-protos.h (SYMBOL_FORCE_TO_MEM): Delete. (SYMBOL_32_HIGH): Likewise. (mips_output_tls_reloc_directive): Declare. * config/mips/mips.h (PIC_FUNCTION_ADDR_REGNUM): Move to mips.md. (mips_use_pcrel_pool_p, mips_lo_relocs, mips_hi_relocs): Declare. * config/mips/mips.c (mips_use_pcrel_pool_p): New variable. (mips_lo_relocs, mips_hi_relocs): Make extern. (mips16_stub_function): Move up file. (mips_classify_symbol): Remove SYMBOL_FORCE_TO_MEM handling. (mips_symbolic_constant_p): Likewise. Remove SYMBOL_32_HIGH too. (mips_symbol_insns_1): Likewise. Check mips_use_pcrel_pool_p. (mips_cannot_force_const_mem): Use mips_use_pcrel_pool_p instead of SYMBOL_FORCE_TO_MEM. Only check mips_tls_symbol_ref_1 if it's false. (mips_get_tp): Add MIPS16 support. (mips_legitimize_tls_address): Remove MIPS16 sorry(). Generalize DTPREL and TPREL handling. (mips_init_relocs): Initialize mips_use_pcrel_pool_p. Add MIPS16 TLS support. (mips_output_tls_reloc_directive): New function. (mips16_rewrite_pool_refs): Ignore UNSPEC_TLS_GET_TPs. * config/mips/predicates.md (symbolic_operand_with_high) (tls_reloc_operand): New predicates. (force_to_mem_operand): Use mips_use_pcrel_pool_p. * config/mips/mips.md (UNSPEC_UNSHIFTED_HIGH): New unspec. (PIC_FUNCTION_ADDR_REGNUM): Moved from mips.h. (*unshifted_high): New instruction. Use it for MIPS16 high splitter. (consttable_tls_reloc, tls_get_tp_mips16_<mode>): New patterns. (*tls_get_tp_mips16_call_<mode>): Likewise. gcc/testsuite/ * gcc.target/mips/code-readable-2.c: Allow the jump table address to be loaded from the constant pool, rather than via %hi and %lo. libgcc/ 2012-01-08 Chung-Lin Tang <cltang@codesourcery.com> Richard Sandiford <rdsandiford@googlemail.com> * config/mips/libgcc-mips16.ver (__mips16_rdhwr): Add. * config/mips/mips16.S (__mips16_rdhwr): New function. * config/mips/t-mips16 (LIB1ASMFUNCS): Add _m16rdhwr. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@183195 138bc75d-0d04-0410-961f-82ee72b054a4
* * libgcov.c (__gcov_init): Ignore objects with no functions.nathan2012-01-112-1/+5
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@183103 138bc75d-0d04-0410-961f-82ee72b054a4
* libgcc/gjl2012-01-103-22/+153
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@183058 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/sparc/sol2-unwind.h (sparc64_is_sighandler): Check that theebotcazou2012-01-092-6/+10
| | | | | | | | purported sigacthandler address isn't null before dereferencing it. (sparc_is_sighandler): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@183020 138bc75d-0d04-0410-961f-82ee72b054a4
* PR ada/41929ebotcazou2012-01-092-41/+96
| | | | | | | | | | * config/sparc/sol2-unwind.h (sparc64_is_sighandler): Remove SAVPC and add CFA. Revert back to old code for Solaris 8+ multi-threaded. (sparc_is_sighandler): Likewise. (MD_FALLBACK_FRAME_STATE_FOR): Adjust call to IS_SIGHANDLER. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@183005 138bc75d-0d04-0410-961f-82ee72b054a4
* 2012-01-06 Tristan Gingold <gingold@adacore.com>gingold2012-01-064-23/+35
| | | | | | | | | | | | | | * config/ia64/t-ia64 (LIB1ASMFUNCS): Move backward compatibility thunks... (CUSTOM_CRTSTUFF, crtbegin.o, crtend.o) (crtbeginS.o, crtendS.o): ... and these to ... * config/ia64/t-ia64-elf: ... this new file. * config.host (ia64*-*-elf*, ia64*-*-freebsd*, ia64*-*-linux*) (ia64*-*-hpux*): Add ia64/t-ia64-elf in tmake_file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182952 138bc75d-0d04-0410-961f-82ee72b054a4
* config/krebbel2012-01-043-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2012-01-04 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> PR bootstrap/51734 * picflag.m4: Remove s390 case statement. gcc/ 2012-01-04 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * configure: Regenerate. libada/ 2012-01-04 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * configure: Regenerate. libgcc/ 2012-01-04 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * configure: Regenerate. * config/s390/t-crtstuff: Remove -fPIC. libiberty/ 2012-01-04 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * configure: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182868 138bc75d-0d04-0410-961f-82ee72b054a4
* 2012-01-02 Jonathan Wakely <jwakely.gcc@gmail.com>redi2012-01-032-28/+7
| | | | | | | | | PR bootstrap/51006 * enable-execute-stack-mprotect.c (getpagesize): Do not define for NetBSD. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182860 138bc75d-0d04-0410-961f-82ee72b054a4
* contrib/gjl2012-01-022-11/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR target/51345 * gcc_update (files_and_dependencies): Add gcc/config/avr/t-multilib, gcc/config/avr/multilib.h. libgcc/ PR target/51345 * config/avr/lib1funcs.S: Remove FIXME comments. (SPEED_DIV): Depend on __AVR_HAVE_8BIT_SP__. gcc/ PR target/51345 * config.gcc (tm_file target=avr]): Add avr/avr-multilib.h (tmake_file target=avr): Add avr/t-multilib. * config/avr/avr-c.c (avr_cpu_cpp_builtins): Use AVR_HAVE_8BIT_SP to built-in define __AVR_HAVE_8BIT_SP__, __AVR_HAVE_16BIT_SP__. * config/avr/genmultilib.awk: New file. * config/avr/t-multilib: New auto-generated file. * config/avr/multilib.h: New auto-generated file. * config/avr/t-avr (AVR_MCUS): New variable. (genopt.sh): Use it. (s-mlib): Depend on t-multilib. (t-multilib, multilib.h): New dependencies. (s-avr-mlib): New rule to build t-multilib, multilib.h from AVR_MCUS. (MULTILIB_OPTIONS): Remove. (MULTILIB_MATCHES): Remove. (MULTILIB_DIRNAMES): Remove. (MULTILIB_EXCEPTIONS): Remove: * config/avr/genopt.sh: Don't use hard coded file name; pass AVR_MCUS from t-avr instead. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182797 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/gjl2012-01-023-3/+101
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implement light-weight DImode support. * config/avr/avr-dimode.md: New file. * config/avr/avr.md: Include it. (adjust_len): Add plus64, compare64. (HIDI): Remove code iterator. (code_stdname): New code attribute. (rotx, rotsmode): Remove DI. (rotl<mode>3, *rotw<mode>, *rotb<mode>): Use HISI instead of HIDI as code iterator. * config/avr/avr-protos.h (avr_have_dimode): New. (avr_out_plus64, avr_out_compare64): New. * config/avr/avr.c (avr_out_compare): Handle DImode. (avr_have_dimode): New variable definition and initialization. (avr_out_compare64, avr_out_plus64): New functions. (avr_out_plus_1): Use simplify_unary_operation to negate xval. (adjust_insn_length): Handle ADJUST_LEN_COMPARE64, ADJUST_LEN_PLUS64. (avr_compare_pattern): Skip DImode comparisons. libgcc/ Implement light-weight DImode support. * config/avr/t-avr (LIB1ASMFUNCS): Add _adddi3, _adddi3_s8, _subdi3, _cmpdi2, _cmpdi2_s8, _rotldi3. * config/avr/lib1funcs.S (__adddi3, __adddi3_s8, __subdi3, __cmpdi2, __cmpdi2_s8, __rotldi3): New functions. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182794 138bc75d-0d04-0410-961f-82ee72b054a4
* * libgcov.c (gcov_crc32): Remove global var.nathan2011-12-302-93/+145
| | | | | | | | | | | | (free_fn_data): New function. (buffer_fn_data): Pass in filename, more robust error recovery. (crc32_unsigned): New function. (gcov_exit): More robust detection of new program. More robust error recovery. (__gcov_init): Do not update program's crc here. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182743 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/i386/morestack.S: Simplify CFI opcodes throughout.ian2011-12-221-42/+29
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182609 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-12-21 Tristan Gingold <gingold@adacore.com>gingold2011-12-212-0/+6
| | | | | | | | * config/ia64/fde-vms.c (UNW_IVMS_MODE): Define. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182568 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/i386/morestack.S (__morestack_non_split): If there isian2011-12-202-2/+108
| | | | | | | | enough stack space already, don't split. Ask for more stack space than we required. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182555 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-12-20 Sergio Durigan Junior <sergiodj@redhat.com>tromey2011-12-202-4/+60
| | | | | | | | | | | | | * unwind-arm-common.inc: Include `tconfig.h', `tsystem.h' and `sys/sdt.h'. (_Unwind_DebugHook): New function. (uw_restore_core_regs): New define. (unwind_phase2): Use uw_restore_core_regs instead of restore_core_regs. (unwind_phase2_forced): Likewise. (__gnu_Unwind_Resume): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182552 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/alpha/linux-unwind.h: Update copyright years.uros2011-12-202-9/+34
| | | | | | | | | (MD_FROB_UPDATE_CONTEXT): New define. (alpha_frob_update_context): New function. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182522 138bc75d-0d04-0410-961f-82ee72b054a4
* libgcc/rsandifo2011-12-172-2/+7
| | | | | | | | * config.host (mips*-sde-elf*, mipsisa64sr71k-*-elf*): Add to tmake_file rather replacing it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182431 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc:iains2011-12-152-59/+64
| | | | | | | | | | | | | | | | | | | | | * config/rs6000/rs6000.c (rs6000_emit_prologue): Move update of VRSave mask to save_world() when that is in use. libgcc: * config/rs6000/darwin-world.S (toplevel): Make it clear that this function is not used for PPC64. (save_world): Amend comments. Update the VRsave mask to reflect the saved regs. (rest_world): Update comments, do not clobber r10, do not use r8. (eh_rest_world_r10): Amend comments, do not use r8. (rest_world_eh_r7r8): Rename as local Lrest_world_eh_r7, since r8 is no longer used, move restore of CR and target address to the end of the routine. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182376 138bc75d-0d04-0410-961f-82ee72b054a4
* Check __GLIBC__ when using __SIGRTMINhjl2011-12-142-2/+7
| | | | | | | | | | 2011-12-14 H.J. Lu <hongjiu.lu@intel.com> * generic-morestack.c (__generic_morestack_set_initial_sp): Check __GLIBC__ instead of __linux__ when using __SIGRTMIN. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182342 138bc75d-0d04-0410-961f-82ee72b054a4
* libgcc/gjl2011-12-143-1/+155
| | | | | | | | | | | | | | | | | | | | | PR target/50931 * config/avr/t-avr (LIB1ASMSRC): Add _mulpsi3, _mulsqipsi3. * config/avr/lib1funcs.S (__mulpsi3, __mulsqipsi3): New functions. gcc/ PR target/50931 * config/avr/avr.md (mulpsi3): New expander. (*umulqihipsi3, *umulhiqipsi3): New insns. (*mulsqipsi3.libgcc, *mulpsi3.libgcc): New insns. (mulsqipsi3, *mulpsi3): New insn-and-splits. (ashlpsi3): Turn to expander. Move insn code to... (*ashlpsi3): ...this new insn. testsuite/ PR target/50931 * gcc.target/avr/torture/int24-mul.c: New testcase. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182328 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/sparc/sol2-unwind.h: Use #ifdef directive consistently.ebotcazou2011-12-112-1/+5
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182204 138bc75d-0d04-0410-961f-82ee72b054a4
* PR target/49313gjl2011-12-093-0/+250
| | | | | | | | | * config/avr/t-avr (LIB1ASMFUNCS): Add _muldi3. * config/avr/lib1funcs.S (__muldi3): New function. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182160 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-12-06 Andrew Pinski <apinski@cavium.com>pinskia2011-12-062-2/+8
| | | | | | | | | | * crtstuff.c (__do_global_dtors_aux_fini_array_entry): Align to the size of func_ptr. (__frame_dummy_init_array_entry): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182066 138bc75d-0d04-0410-961f-82ee72b054a4
* libgcc/gjl2011-12-062-0/+38
| | | | | | | | | | | | | | | | | | | | | | | | Forward-port from gcc-4_6-branch r181936 2011-12-02. PR target/51345 PR target/51002 * config/avr/lib1funcs.S (__prologue_saves__, __epilogue_restores__, __divdi3_moddi3): Enclose parts using __SP_H__ in !defined (__AVR_HAVE_8BIT_SP__). Add FIXME comments. gcc/ Forward-port from gcc-4_6-branch r181936 2011-12-02. PR target/51002 * config/avr/avr.md (movhi_sp_r): Set insn condition to !AVR_HAVE_8BIT_SP. * config/avr/avr.c (output_movhi): Use "clr%B0" instead of "in %B0,__SP_H__" if AVR_HAVE_8BIT_SP. (avr_file_start): Only print "__SP_H__ = 0x3e" if !AVR_HAVE_8BIT_SP. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182052 138bc75d-0d04-0410-961f-82ee72b054a4
* libgcc:iains2011-12-042-1/+6
| | | | | | | | * config/rs6000/t-darwin64 (LIB2ADD): Add fp and gp save routines. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181991 138bc75d-0d04-0410-961f-82ee72b054a4
* PR other/51272danglin2011-12-013-14/+51
| | | | | | | | | | | | | * config/pa/stublib.c (_ITM_registerTMCloneTable): New stub. (_ITM_deregisterTMCloneTable): Likewise. (__register_frame_info): Fix unused warning. (__deregister_frame_info, __cxa_finalize, _Jv_RegisterClasses, pthread_default_stacksize_np): Likewise. * config/pa/t-stublib (LIBGCCSTUB_OBJS): Add new objects and rules. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181870 138bc75d-0d04-0410-961f-82ee72b054a4
* .dj2011-11-2912-0/+1067
| | | | | | | | | | | | | | | | | | | | | | | | | * configure.ac (rl78-*-*) New case. * configure: Regenerate. * MAINTAINERS: Add myself as RL78 maintainer. libgcc * config.host (rl78-*-elf): New case. * config/rl78: New directory for the Renesas RL78. gcc * config.gcc (rl78-*-elf): New case. * doc/extend.texi: Add RL78 documentation. * doc/invoke.texi: Likewise. * doc/md.texi: Likewise. * doc/contrib.texi: Add RL78. * doc/install.texi: Add rl78-*-elf. * config/rl78: New directory for the Renesas RL78. contrib * config-list.mk (LIST): Add rl78-elf. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181819 138bc75d-0d04-0410-961f-82ee72b054a4
* * config.host (tic6x-*-uclinux): Append to extra_parts. Fixbernds2011-11-292-2/+9
| | | | | | | formatting. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181805 138bc75d-0d04-0410-961f-82ee72b054a4
* Cleanup rs6000/t-ppccomm configurations (PR other/51022)ro2011-11-285-35/+61
| | | | | | | | | | | | | | | | | | | | | | | | | | | PR other/51022 * config/rs6000/t-savresfgpr: New file. * config/rs6000/t-ppccomm (LIB2ADD_ST): Remove all but $(srcdir)/config/rs6000/eabi.S. * config/rs6000/t-ppccomm-ldbl: Remove. * config.host (powerpc-*-freebsd*): Add rs6000/t-savresfgpr to tmake_file. (powerpc-*-eabispe*): Likewise. (powerpc-*-eabi*): Likewise. (powerpc-*-linux*, powerpc64-*-linux*): Likewise. (powerpc-wrs-vxworks, powerpc-wrs-vxworksae): Add rs6000/t-ppccomm to tmake_file, remove rs6000/t-ppccomm-ldbl. (powerpc-*-eabisimaltivec*): Remove rs6000/t-ppccomm-ldbl from tmake_file. (powerpc-*-eabisim*): Likewise. (powerpc-*-elf*): Likewise. (powerpc-*-eabialtivec*): Likewise. (powerpc-xilinx-eabi*): Likewise. (powerpc-*-rtems*): Likewise. (powerpcle-*-elf*): Likewise. (powerpcle-*-eabisim*): Likewise. (powerpcle-*-eabi*): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181782 138bc75d-0d04-0410-961f-82ee72b054a4
* * generic-morestack.c (__splitstack_find): Check for NULL oldian2011-11-283-3/+83
| | | | | | | | | | stack value. (__splitstack_resetcontext): New function. (__splitstack_releasecontext): New function. * libgcc-std.ver.in: Add new functions to GCC_4.7.0. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181771 138bc75d-0d04-0410-961f-82ee72b054a4
* libgcc:iains2011-11-272-11/+20
| | | | | | | | * config/darwin-crt-tm.c: Correct comments, use correct licence. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181765 138bc75d-0d04-0410-961f-82ee72b054a4
* libgcc:iains2011-11-272-11/+4
| | | | | | | | * config/darwin-crt-tm.c: Remove dummy _ITM_ functions. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181764 138bc75d-0d04-0410-961f-82ee72b054a4
* m68k-linux: Implement atomic operations via syscall.rth2011-11-264-3/+221
| | | | | | | | | | | | libgcc/ * config/m68k/linux.h (TARGET_INIT_LIBFUNCS): New. * config/m68k/m68k.c (m68k_init_sync_libfuncs): New. gcc/ * config/m68k/linux-atomic.c: New file. * config/m68k/t-linux: New file. * config.host (m68k-uclinux, m68k-linux): Use it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181746 138bc75d-0d04-0410-961f-82ee72b054a4
OpenPOWER on IntegriCloud