2012-01-11 Bruce Korb <bkorb@gnu.org>
Steven G. Kargl <kargl@gcc.gnu.org>
Andreas Tobler <andreast@fgznet.ch>
PR bootstrap/57105
PR preprocessor/51776
* inclhack.def (cdef_cplusplus): Add a replacement for [[noreturn]].
* fixincl.x: Regenerate.
* tests/base/sys/cdefs.h: Update.
* genfixes: Remove the 'Ver.' from the version check.
Co-Authored-By: Andreas Tobler <andreast@fgznet.ch>
Co-Authored-By: Steven G. Kargl <kargl@gcc.gnu.org>
From-SVN: r183096
2012-01-11 Janne Blomqvist <jb@gcc.gnu.org>
Mike Stump <mikestump@comcast.net>
PR libfortran/51803
* runtime/main.c (store_exe_path): Handle getcwd failure and lack
of the function better.
Co-Authored-By: Mike Stump <mikestump@comcast.net>
From-SVN: r183090
2012-01-10 Bob Duff <duff@adacore.com>
* sem_intr.adb (Check_Shift): Use RM_Size instead of Esize, when
checking that the 'Size is correct. If the type is "mod 2**12",
for example, it's illegal, but Esize is the 'Object_Size, which
will be something like 16 or 32, so the error ('Size = 12) was
not detected.
* gnat_rm.texi: Improve documentation of shift
and rotate intrinsics.
2012-01-10 Pascal Obry <obry@adacore.com>
* prj.adb (For_Every_Project_Imported): Fix
implementation to make sure we return each project only once
for aggragte libraries. It is fine to return a project twice for
aggregate projects, this was the case as a Project_Id is different
in each project tree. The new implementation use a table based on
the project name to ensure proper detection of duplicate project
in aggregate library. A new context is then created to continue
retrurning duplicate project for aggregate libraries.
From-SVN: r183059
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 Richard Guenther <rguenther@suse.de>
PR tree-optimization/50913
* graphite-scop-detection.c (stmt_has_simple_data_refs_p):
Require data-refs to be representable by Graphite with respect
to any loop nest.
* gcc.dg/graphite/interchange-16.c: New testcase.
* gcc.dg/graphite/scop-20.c: XFAIL.
* gfortran.dg/graphite/interchange-1.f: Likewise.
* gfortran.dg/graphite/block-1.f90: Likewise.
* gfortran.dg/graphite/block-2.f: Likewise.
From-SVN: r183055
2012-01-10 Tom de Vries <tom@codesourcery.com>
PR rtl-optimization/51271
* dwarf2cfi.c (scan_trace): Save and restore cur_row->reg_save when
handling annulled branch.
From-SVN: r183052
2012-01-09 Kai Tietz <ktietz@redhat.com>
PR libstc++/51673 part 2
* config/abi/pre/gnu-versioned-namespace.ver: Adjusted new/delete
operators signature for LLP64 size_t, and adjusted signatures for
mt-allocator using size_t.
2012-01-09 Benjamin Kosnik <bkoz@redhat.com>
PR libstc++/51673 part 1
* config/abi/pre/gnu-versioned-namespace.ver: Sync cxxabi symbols
with gnu.ver.
From-SVN: r183043
* gcc-interface/trans.c (call_to_gnu): Create the temporary for the
return value in the variable-sized return type case if the target is
an array with fixed size. However, do not create it if this is the
expression of an object declaration.
From-SVN: r183033
2012-01-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/51791
* interface.c (matching_typebound_op): Drill down through
possible parentheses to obtain base expression. Do not test for
'class_ok' but, instead for the class structure components.
* resolve.c (resolve_ordinary_assign): Extend error message for
polymorphic assignment to advise checking for specific
subroutine.
PR fortran/51792
* resolve.c (resolve_typebound_function): Restore 'static' to
declaration.
2012-01-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/51791
* gfortran.dg/typebound_operator_7.f03: Insert parentheses
around base object in first assignment in main program.
* gfortran.dg/typebound_operator_10.f03: New test.
From-SVN: r183032
2012-01-09 Harald Anlauf <anlauf@gmx.de>
Tobias Burnus <burnus@net-b.de>
PR fortran/51197
* runtime/backtrace.c (show_backtrace): Modify wording written
before the backtrace.
* runtime/compile_options.c (show_signal): New function.
(backtrace_handler): Use it.
Co-Authored-By: Tobias Burnus <burnus@net-b.de>
From-SVN: r183030
* config/sparc/sol2-unwind.h (sparc64_is_sighandler): Check that the
purported sigacthandler address isn't null before dereferencing it.
(sparc_is_sighandler): Likewise.
From-SVN: r183020