Janis Johnson [Wed, 3 Mar 2010 22:05:30 +0000 (22:05 +0000)]
sourcebuild.texi (Test directives): Document that arguments include-opts and exclude-opts are now optional for...
* doc/sourcebuild.texi (Test directives): Document that arguments
include-opts and exclude-opts are now optional for dg-skip-if,
dg-xfail-if, dg-xfail-run-if, and dg-shouldfail.
* lib/target-supports-dg.exp (check-flags): Provide defaults for
include-opts and exclude-opts; skip checking the flags if arguments
are the same as the defaults.
(dg-xfail-if): Verify the number of arguments, supply defaults
for unspecified optional arguments.
(dg-skip-if, dg-xfail-run-if): Verify the number of arguments.
Jason Merrill [Wed, 3 Mar 2010 19:01:36 +0000 (14:01 -0500)]
re PR c++/12909 (ambiguity in mangling vector types)
PR c++/12909
* mangle.c: Include cgraph.h.
(mangle_decl): If the mangled name will change in a later
ABI version, make the later mangled name an alias.
* method.c (make_alias_for): Copy DECL_ARGUMENTS.
* Make-lang.in (mangle.o): Depend on cgraph.h.
Paul Thomas [Wed, 3 Mar 2010 17:49:53 +0000 (17:49 +0000)]
re PR fortran/43243 ([4.4 Regression ?] Wrong-code due to missing array temp for DT with pointer component)
2010-03-03 Paul Thomas <pault@gcc.gnu.org>
PR fortran/43243
* trans-array.c (gfc_conv_array_parameter): Contiguous refs to
allocatable ultimate components do not need temporaries, whilst
ultimate pointer components do.
2010-03-03 Paul Thomas <pault@gcc.gnu.org>
PR fortran/43243
* gfortran.dg/internal_pack_12.f90: New test.
Mike Stump [Wed, 3 Mar 2010 16:46:27 +0000 (16:46 +0000)]
builtin-unreachable.c: Don't expect stack adjustments to not be present on machines that align the...
* gcc.target/i386/builtin-unreachable.c: Don't expect stack
adjustments to not be present on machines that align the stack to
more than 4 bytes and don't have a red zone yet as that is an
unimplemented optimization.
Janus Weil [Wed, 3 Mar 2010 15:12:40 +0000 (16:12 +0100)]
re PR fortran/43169 ([OOP] gfortran rejects pure procedure with select type construct)
2010-03-03 Janus Weil <janus@gcc.gnu.org>
PR fortran/43169
* resolve.c (resolve_code): Correctly set gfc_current_ns for
EXEC_SELECT_TYPE.
(gfc_impure_variable): Make it work with sub-namespaces (BLOCK etc).
(gfc_pure): Ditto.
Jakub Jelinek [Wed, 3 Mar 2010 07:02:37 +0000 (08:02 +0100)]
re PR debug/43237 (Wrong DW_AT_upper_bound)
PR debug/43237
* dwarf2out.c (add_bound_info): If a decl bound doesn't have decl_die,
fallthrough to default handling, just with want_address 0 instead of 2.
For single element lists, add_AT_loc directly, otherwise create an
artificial variable DIE and stick location list to it.
Jakub Jelinek [Wed, 3 Mar 2010 07:01:27 +0000 (08:01 +0100)]
re PR debug/43177 (Handle at least simple cases of reversible insns in debug info)
PR debug/43177
* var-tracking.c (loc_cmp): Don't assert VALUEs have the same mode.
(VAL_EXPR_HAS_REVERSE): Define.
(reverse_op): New function.
(add_stores): For reversible operations add an extra MO_VAL_USE.
Jakub Jelinek [Wed, 3 Mar 2010 06:59:09 +0000 (07:59 +0100)]
re PR debug/43177 (Handle at least simple cases of reversible insns in debug info)
PR debug/43177
* var-tracking.c (loc_cmp): Don't assert VALUEs have the same mode.
(VAL_EXPR_HAS_REVERSE): Define.
(reverse_op): New function.
(add_stores): For reversible operations add an extra MO_VAL_USE.
Jonathan Wakely [Tue, 2 Mar 2010 23:00:21 +0000 (23:00 +0000)]
mutex (lock_guard::lock_guard): Do not lock mutex when adopt_lock_t constructor is used.
2010-03-02 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/mutex (lock_guard::lock_guard): Do not lock mutex when
adopt_lock_t constructor is used.
* testsuite/30_threads/lock_guard/cons/1.cc: New.
Jeff Law [Tue, 2 Mar 2010 18:56:50 +0000 (11:56 -0700)]
reload1.c (rtx_p, [...]): Declare.
* reload1.c (rtx_p, substitute_stack): Declare.
(substitute): Record addresses of changed rtxs.
(gen_reload_chain_without_interm_reg_p): Don't use copy_rtx anymore.
Restore the original rtx when complete.
(reload): Free subsitute_stack when complete.
Janis Johnson [Tue, 2 Mar 2010 17:44:30 +0000 (17:44 +0000)]
gccint.texi (menu): Add Testsuites as a chapter.
* doc/gccint.texi (menu): Add Testsuites as a chapter.
* doc/sourcebuild.texi (Testsuites): Move up a level to be a
new chapter.
(Test Idioms, Test Directives, Ada Tests, C Tests, libgcj Tests,
LTO Testing, gcov Testing, profopt Testing, compat Testing,
Torture Tests): Change from subsection to section.
Paul Thomas [Tue, 2 Mar 2010 11:58:02 +0000 (11:58 +0000)]
re PR fortran/43180 (Bad results without temporary copy of intent(in) argument)
2010-03-02 Paul Thomas <pault@gcc.gnu.org>
PR fortran/43180
* trans-array.c (gfc_conv_array_parameter): A full array of
derived type need not be restricted to a symbol without an
array spec to use the call to gfc_conv_expr_descriptor.
PR fortran/43173
* trans-array.c (gfc_conv_array_parameter): Contiguous refs to
allocatable arrays do not need temporaries.
2010-03-02 Paul Thomas <pault@gcc.gnu.org>
PR fortran/43180
* gfortran.dg/internal_pack_10.f90: New test.
PR fortran/43173
* gfortran.dg/internal_pack_11.f90: New test.
Sebastian Pop [Tue, 2 Mar 2010 10:22:30 +0000 (10:22 +0000)]
Fix PR42640: Correctly initialize the value of the new induction variable.
2010-03-02 Reza Yazdani <reza.yazdani@amd.com>
PR middle-end/42640
* tree-loop-distribution.c (update_phis_for_loop_copy): Replaced
the assignment from the new induction variable to the assignment
of the value from the original loop PHI function.
Rainer Orth [Mon, 1 Mar 2010 18:09:19 +0000 (18:09 +0000)]
configure.ac (gcc_cv_as_cfi_directive): Disable cfi directives unless GCC and gas agree on using read-only .eh_frame...
* configure.ac (gcc_cv_as_cfi_directive) [i?86-*-solaris*]:
Disable cfi directives unless GCC and gas agree on using read-only
.eh_frame sections for 64-bit.
* configure: Regenerate.
Rainer Orth [Mon, 1 Mar 2010 12:44:33 +0000 (12:44 +0000)]
re PR pch/14940 (PCH largefile test fails on various platforms)
gcc:
PR pch/14940
* config/host-solaris.c (HOST_HOOKS_GT_PCH_GET_ADDRESS): Redefine
to sol_gt_pch_get_address.
(TRY_EMPTY_VM_SPACE): Define for all combinations of 32 and
64-bit, SPARC and x86.
(sol_gt_pch_get_address): New function.
gcc/testsuite:
PR pch/14940
* gcc.dg/pch/pch.exp: Don't XFAIL largefile.c on i?86-*-solaris2.10.
Jakub Jelinek [Mon, 1 Mar 2010 07:03:22 +0000 (08:03 +0100)]
cfgexpand.c (expand_used_vars): If an artificial non-ignored var has no rtl yet when processing local_decls...
* cfgexpand.c (expand_used_vars): If an artificial non-ignored var
has no rtl yet when processing local_decls, queue it and recheck
if deferred stack allocation hasn't assigned it rtl.
Mark Mitchell [Sun, 28 Feb 2010 17:07:54 +0000 (17:07 +0000)]
re PR c++/42748 (warnings about 'mangling of 'va_list' has changed in GCC 4.4' not suppressed in sytem headers)
2010-02-27 Mark Mitchell <mark@codesourcery.com>
PR c++/42748
* cp-tree.h (push_tinst_level): Declare.
(pop_tinst_level): Likewise.
* pt.c (push_tinst_level): Give it external linkage.
(pop_tinst_level): Likewise.
* mangle.c (mangle_decl_string): Set the source location to that
of the decl while mangling.
H.J. Lu [Sun, 28 Feb 2010 07:56:36 +0000 (07:56 +0000)]
Don't set the default arch for i[34567]86-*-darwin*|x86_64-*-darwin*.
2010-02-27 H.J. Lu <hongjiu.lu@intel.com>
PR bootstrap/43202
* config.gcc: Don't enable SSE math for i[34567]86-*-darwin*
by default. Don't set the default arch for
i[34567]86-*-darwin*|x86_64-*-darwin*.
H.J. Lu [Sun, 28 Feb 2010 07:23:31 +0000 (07:23 +0000)]
Restore i[34567]86-*-darwin* bootstrap.
2010-02-27 H.J. Lu <hongjiu.lu@intel.com>
PR bootstrap/43202
* config.gcc: Enable SSE math for i[34567]86-*-darwin* by
default. Set the default 32bit/64bit archs with $with_arch
instead of $arch for i[34567]86-*-*|x86_64-*-* targets.
Eric Botcazou [Sat, 27 Feb 2010 14:27:27 +0000 (14:27 +0000)]
re PR ada/42253 (run time crash on null for thin pointers)
PR ada/42253
* gcc-interface/utils2.c (build_binary_op) <EQ_EXPR>: Assert that fat
pointer base types are variant of each other. Apply special treatment
for null to fat pointer types in all cases.
Jakub Jelinek [Fri, 26 Feb 2010 15:58:57 +0000 (16:58 +0100)]
re PR debug/43190 (Used pointer typedefs eliminated from debug info)
PR debug/43190
* function.c (used_types_insert): Don't skip through named pointer
types. Don't use TYPE_MAIN_VARIANT if the original type has a name
and it is different from the main variant's type.
Jakub Jelinek [Fri, 26 Feb 2010 11:03:46 +0000 (12:03 +0100)]
Makefile.in (var-tracking.o): Depend on $(DIAGNOSTIC_H).
* Makefile.in (var-tracking.o): Depend on $(DIAGNOSTIC_H).
* var-tracking.c: Include diagnostic.h.
(debug_dv): New function.
(dump_var): Print DEBUG_EXPR_DECLs as D#N instead of D.-N.
Jakub Jelinek [Fri, 26 Feb 2010 11:01:28 +0000 (12:01 +0100)]
re PR debug/43161 (Wrong debug info in guality/vla-1.c (f2))
PR debug/43161
* regcprop.c (struct queued_debug_insn_change): New type.
(struct value_data_entry): Add debug_insn_changes field.
(struct value_data): Add n_debug_insn_changes field.
(debug_insn_changes_pool): New variable.
(free_debug_insn_changes, apply_debug_insn_changes,
cprop_find_used_regs_1, cprop_find_used_regs): New functions.
(kill_value_one_regno): Call free_debug_insn_changes if needed.
(init_value_data): Clear debug_insn_changes and n_debug_insn_changes
fields.
(replace_oldest_value_reg): Don't change DEBUG_INSNs, instead queue
changes for them.
(copyprop_hardreg_forward_1): Don't call apply_change_group for
DEBUG_INSNs. For a real insn, if there are queued DEBUG_INSN
changes, call cprop_find_used_regs via note_stores.
(copyprop_hardreg_forward): When copying vd from predecessor
which has any queued DEBUG_INSN changes, make sure the pointers are
cleared. At the end call df_analyze and then if there are any
DEBUG_INSN changes queued at the end of some basic block for still
live registers, apply them.
(pass_cprop_hardreg): Set TODO_df_finish in todo_flags_finish.
H.J. Lu [Fri, 26 Feb 2010 02:37:40 +0000 (02:37 +0000)]
Set default arch/cpu for i[34567]86-*-*|x86_64-*-* targets.
2010-02-25 H.J. Lu <hongjiu.lu@intel.com>
* config.gcc: Set arch/cpu for i[34567]86-*-*|x86_64-*-*
targets. Set the default with_cpu/with_arch from arch/cpu.
Allow x86-64 and native for with_cpu/with_arch.
Nicolas Benoit [Fri, 26 Feb 2010 01:51:27 +0000 (01:51 +0000)]
ebitmap.c: Change calls to verify_popcount with calls to sbitmap_verify_popcount.
2010-02-25 Nicolas Benoit <nbenoit@tuxfamily.org>
* ebitmap.c: Change calls to verify_popcount with calls to
sbitmap_verify_popcount.
(ebitmap_clear_bit): Fixed map->cacheindex test and
map>cache update when bit clearing results in an empty
element.