Ian Lance Taylor [Thu, 7 Jun 2012 06:34:52 +0000 (06:34 +0000)]
runtime: Fix printing of names in stack dumps.
From-SVN: r188297
Ian Lance Taylor [Thu, 7 Jun 2012 05:49:44 +0000 (05:49 +0000)]
compiler: Fix unsafe.Sizeof for named structs with named struct fields.
From-SVN: r188295
Fabien Chêne [Thu, 7 Jun 2012 05:36:18 +0000 (07:36 +0200)]
re PR c++/51214 ([C++11] name lookup issue with c++11 enums)
gcc/testsuite/ChangeLog
2012-06-07 Fabien Chêne <fabien@gcc.gnu.org>
PR c++/51214
* g++.dg/cpp0x/forw_enum11.C: New.
gcc/cp/ChangeLog
2012-06-07 Fabien Chêne <fabien@gcc.gnu.org>
PR c++/51214
* cp-tree.h (insert_late_enum_def_into_classtype_sorted_fields):
Declare.
* class.c (insert_into_classtype_sorted_fields): New.
(add_enum_fields_to_record_type): New.
(count_fields): Adjust the comment.
(add_fields_to_record_type): Likewise.
(finish_struct_1): Move the code that inserts the fields for the
sorted case, into insert_into_classtype_sorted_fields, and call
it.
(insert_late_enum_def_into_classtype_sorted_fields): Define.
* decl.c (finish_enum_value_list): Call
insert_late_enum_def_into_classtype_sorted_fields if a late enum
definition is encountered.
From-SVN: r188294
Ian Lance Taylor [Thu, 7 Jun 2012 00:55:20 +0000 (00:55 +0000)]
runtime: Use dl_iterate_phdr to get TLS size.
From-SVN: r188290
GCC Administrator [Thu, 7 Jun 2012 00:18:57 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r188289
Sterling Augustine [Wed, 6 Jun 2012 23:06:06 +0000 (23:06 +0000)]
Move Changelog entries to the right file.
From-SVN: r188284
Paolo Carlini [Wed, 6 Jun 2012 23:01:45 +0000 (23:01 +0000)]
re PR c++/53567 ("ICE: Error reporting routines re-entered" on missing enum entry)
/cp
2012-06-06 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/53567
* typeck.c (cp_perform_integral_promotions): New, like
perform_integral_promotions but also takes a tsubst_flags_t parameter.
(pointer_diff): Add tsubst_flags_t parameter.
(decay_conversion, cp_default_conversion, cp_build_array_ref,
cp_build_binary_op, cp_build_unary_op, build_static_cast_1,
build_reinterpret_cast_1, cp_build_modify_expr,
convert_for_assignment): Adjust.
* optimize.c (build_delete_destructor_body): Adjust.
* init.c (expand_virtual_init, expand_default_init, build_new_1,
build_new, build_vec_delete_1, build_vec_init, build_delete): Adjust.
(construct_virtual_base): Adjust LOOKUP_COMPLAIN -> 0.
* class.c (build_base_path): Adjust.
* decl.c (compute_array_index_type, finish_destructor_body): Likewise.
* method.c (synthesized_method_walk): Adjust flag and complain.
* rtti.c (ifnonnull): Add tsubst_flags_t parameter.
(build_typeid, build_dynamic_cast_1): Adjust.
* except.c (initialize_handler_parm): Likewise.
* typeck2.c (process_init_constructor_record): Likewise.
* pt.c (tsubst_friend_class): Don't change flags.
* semantics.c (finish_goto_stmt, handle_omp_for_class_iterator,
finish_static_assert): Likewise.
* parser.c (cp_parser_lookup_name): Just pass 0 as flags to
lookup_name_real.
* call.c (build_op_delete_call): Add tsubst_flags_t parameter.
(convert_like_real, convert_arg_to_ellipsis, convert_for_arg_passing):
Adjust.
(standard_conversion): Adjust LOOKUP_COMPLAIN -> 0.
(implicit_conversion): Mask out tf_error with a FIXME.
(build_user_type_conversion_1, build_new_op_1, build_over_call): Use
complain & tf_error instead of flags & LOOKUP_COMPLAIN.
* cvt.c (cp_convert_to_pointer, convert_to_pointer_force,
build_up_reference, convert_to_reference, cp_convert,
cp_convert_and_check, ocp_convert, convert_force): Add tsubst_flags_t
parameter.
(convert_to_reference, ocp_convert): Use complain & tf_error instead
of flags & LOOKUP_COMPLAIN.
(convert_force): Adjust LOOKUP_COMPLAIN -> 0.
* name-lookup.c (identifier_type_value_1, lookup_qualified_name,
lookup_name_real, lookup_function_nonclass, lookup_name,
lookup_name_prefer_type): Adjust LOOKUP_COMPLAIN -> 0.
* cp-tree.h: Adjust prototypes; remove LOOKUP_COMPLAIN.
/testsuite
2012-06-06 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/53567
* g++.dg/cpp0x/alias-decl-19.C: New.
From-SVN: r188283
Steven Bosscher [Wed, 6 Jun 2012 21:38:20 +0000 (21:38 +0000)]
invoke.texi (fconserve-space): Remove documentation.
gcc/
* doc/invoke.texi (fconserve-space): Remove documentation.
c-family/
* c.opt (fconserve-space): Turn into a no-op.
cp/
* decl.c: Do not include output.h.
(start_decl): Remove code for flag_conserve_space.
testsuite/
* g++.old-deja/g++.brendan/array1.C: Remove dg-options.
From-SVN: r188282
Jakub Jelinek [Wed, 6 Jun 2012 18:31:06 +0000 (20:31 +0200)]
re PR libgomp/52993 (gomp_init_nest_lock_25: possible bad call to memset)
PR libgomp/52993
* config/linux/lock.c (gomp_init_nest_lock_25): Fix up last
argument to memset call.
From-SVN: r188276
Uros Bizjak [Wed, 6 Jun 2012 18:11:39 +0000 (20:11 +0200)]
avx-os-support.h (XCR_XFEATURE_ENABLED_MASK): New.
* gcc.target/i386/avx-os-support.h (XCR_XFEATURE_ENABLED_MASK): New.
(XSTATE_FP): Ditto.
(XSTATE_SSE): Ditto.
(XSTATE_YMM): Ditto.
(avx_os_support): Use new defines.
From-SVN: r188275
Edmar Wienskoski [Wed, 6 Jun 2012 18:09:18 +0000 (18:09 +0000)]
rs6000-tables.opt: Regenerated.
2012-06-06 Edmar Wienskoski <edmar@freescale.com>
* config/rs6000/rs6000-tables.opt: Regenerated.
From-SVN: r188274
Georg-Johann Lay [Wed, 6 Jun 2012 16:40:06 +0000 (16:40 +0000)]
Fix comments
From-SVN: r188270
Georg-Johann Lay [Wed, 6 Jun 2012 16:39:52 +0000 (16:39 +0000)]
Fix comments
From-SVN: r188269
Richard Guenther [Wed, 6 Jun 2012 12:53:30 +0000 (12:53 +0000)]
re PR fortran/32380 (misaligned stores don't get vectorized)
2012-06-06 Richard Guenther <rguenther@suse.de>
PR testsuite/32380
* gfortran.dg/vect/pr32380.f: Adjust number of expected vectorized
loops.
From-SVN: r188266
Marek Polacek [Wed, 6 Jun 2012 12:50:55 +0000 (12:50 +0000)]
The new mklog script prints three spaces after the date part, which is wrong.
The new mklog script prints three spaces after the date part, which
is wrong. Thus fixed by adjusting the split pattern. Tested manually.
2012-05-31 Marek Polacek <polacek@redhat.com>
* mklog: Prevent printing three spaces after the date.
From-SVN: r188265
Richard Biener [Wed, 6 Jun 2012 12:22:16 +0000 (12:22 +0000)]
re PR c++/52841 (error: type 'Solvable' is not a base type for type 'Resolvable')
2012-06-06 Fabien Chene <fabien@gcc.gnu.org>
PR c++/52841
* parser.c (cp_parser_alias_declaration): Return earlier
if an error occured.
* g++.dg/cpp0x/pr52841.C: New testcase.
From-SVN: r188264
Richard Guenther [Wed, 6 Jun 2012 09:45:27 +0000 (09:45 +0000)]
re PR tree-optimization/53081 (memcpy/memset loop recognition)
2012-06-06 Richard Guenther <rguenther@suse.de>
PR tree-optimization/53081
* tree-data-ref.h (adjacent_store_dr_p): Rename to ...
(adjacent_dr_p): ... this and make it work for reads, too.
* tree-loop-distribution.c (enum partition_kind): Add PKIND_MEMCPY.
(struct partition_s): Change main_stmt to main_dr, add
secondary_dr member.
(build_size_arg_loc): Change to date data-reference and not
gimplify here.
(build_addr_arg_loc): New function split out from ...
(generate_memset_builtin): ... here. Use it and simplify.
(generate_memcpy_builtin): New function.
(generate_code_for_partition): Adjust.
(classify_partition): Streamline pattern detection. Detect
memcpy.
(ldist_gen): Adjust.
(tree_loop_distribution): Adjust seed statements for memcpy
recognition.
* gcc.dg/tree-ssa/ldist-20.c: New testcase.
* gcc.dg/tree-ssa/loop-19.c: Add -fno-tree-loop-distribute-patterns.
From-SVN: r188261
Matt Turner [Wed, 6 Jun 2012 09:32:23 +0000 (09:32 +0000)]
For Matt Turner.
2012-06-06 Matt Turner <mattst88@gmail.com>
* config/arm/mmintrin.h (_mm_empty): New.
(_m_empty): New.
From-SVN: r188259
Richard Sandiford [Wed, 6 Jun 2012 09:12:58 +0000 (09:12 +0000)]
invoke.texi (sched-pressure-algorithm): Document new --param.
gcc/
* doc/invoke.texi (sched-pressure-algorithm): Document new --param.
* common.opt (fsched-pressure-algorithm=): Remove.
* flag-types.h (sched_pressure_algorithm): Move to...
* sched-int.h (sched_pressure_algorithm): ...here.
* params.def (sched-pressure-algorithm): New param.
* haifa-sched.c (sched_init): Use it to initialize sched_pressure.
* common/config/s390/s390-common.c (s390_option_optimization_table):
Remove OPT_fsched_pressure_algorithm_ entry.
* config/s390/s390.c (s390_option_override): Set a default value for
PARAM_SCHED_PRESSURE_ALGORITHM.
From-SVN: r188258
GCC Administrator [Wed, 6 Jun 2012 00:18:51 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r188257
Michael Meissner [Tue, 5 Jun 2012 19:40:34 +0000 (19:40 +0000)]
re PR target/53487 (Unrecognizable insn for conditional move)
[gcc]
2012-06-04 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/53487
* config/rs6000/rs6000.c (rs6000_generate_compare): If we are
doing an unsigned compare, make sure the second argument is not a
negative constant.
(rs6000_emit_cmove): Don't allow floating point comparisons when
generating ISEL moves.
[gcc/testsuite]
2012-06-04 Michael Meissner <meissner@linux.vnet.ibm.com>
* gcc.target/powerpc/pr53487.c: New test.
From-SVN: r188248
Pat Haugen [Tue, 5 Jun 2012 19:06:57 +0000 (19:06 +0000)]
lhs-1.c: Use parm instead of stack space.
* gcc.target/powerpc/lhs-1.c: Use parm instead of stack space.
From-SVN: r188247
Edmar Wienskoski [Tue, 5 Jun 2012 16:12:00 +0000 (16:12 +0000)]
2012-06-05 Edmar Wienskoski <edmar@freescale.com>
* Fixed date in ChangeLog
From-SVN: r188245
Edmar Wienskoski [Tue, 5 Jun 2012 16:05:16 +0000 (16:05 +0000)]
e5500.md: New file.
2012-06-01 Edmar Wienskoski <edmar@freescale.com>
* config/rs6000/e5500.md: New file.
* config/rs6000/e6500.md: New file.
* config/rs6000/rs6000.c (processor_costs): Add new costs for
e5500 and e6500.
(rs6000_option_override_internal): Altivec and Spe options not
allowed with e5500. Spe options not allowed with e6500. Increase
move inline limit for e5500 and e6500. Disable string instructions
for e5500 and e6500. Enable branch targets alignment for e5500 and
e6500. Initialize rs6000_cost for e5500 and e6500.
(rs6000_adjust_cost): Add extra scheduling cycles between compare
and brnach for e5500 and e6500.
(rs6000_issue_rate): Set issue rate for e5500 and e6500.
* config/rs6000/rs6000-cpus.def: Add cpu definitions for e5500 and
e6500.
* config/rs6000/rs6000.h (ASM_CPU_SPEC): Add e5500 and e6500.
* config/rs6000/rs6000.md (define_attr "cpu"): Add ppce5500 and
ppce6500.
Include e5500.md and e6500.md.
* config/rs6000/rs6000-opt.h (processor_type): Add
PROCESSOR_PPCE5500 and PROCESSOR_PPCE6500.
* config.gcc (cpu_is_64bit): Add new cores e5500, e6500.
(powerpc*-*-*): Add new cores e5500, e6500.
* doc/invoke.texi: (item -mcpu): Add e5500 and e6500 to list of cpus.
gcc/testsuite
2012-06-01 Edmar Wienskoski <edmar@freescale.com>
* gcc.dg/tree-ssa/vector-3.c: Adjust regular expression.
From-SVN: r188244
Richard Guenther [Tue, 5 Jun 2012 14:30:35 +0000 (14:30 +0000)]
tree-vect-data-refs.c (vect_analyze_data_refs): Fix last change.
2012-06-05 Richard Guenther <rguenther@suse.de>
* tree-vect-data-refs.c (vect_analyze_data_refs): Fix last
change.
From-SVN: r188243
Dimitrios Apostolou [Tue, 5 Jun 2012 14:25:46 +0000 (14:25 +0000)]
line-map.c (linemap_enter_macro): Don't zero max_column_hint in every macro.
* line-map.c (linemap_enter_macro): Don't zero max_column_hint in
every macro. This improves performance by reducing the number of
reallocations when track-macro-expansion is on.
From-SVN: r188242
H.J. Lu [Tue, 5 Jun 2012 13:12:52 +0000 (13:12 +0000)]
Select x32 run-time library for --with-abi={x32|mx32}
PR target/53575
* config.gcc: Select x32 run-time library if --with-abi={x32|mx32}
is used for x86_64-*-*.
From-SVN: r188240
Ian Lance Taylor [Tue, 5 Jun 2012 13:12:13 +0000 (13:12 +0000)]
runtime: Comment out code adding TLS size to stack size.
From-SVN: r188238
Richard Guenther [Tue, 5 Jun 2012 12:38:26 +0000 (12:38 +0000)]
re PR middle-end/30442 (Expanded array initialization can use memset builtin function)
2012-06-05 Richard Guenther <rguenther@suse.de>
PR tree-optimization/30442
* tree-vect-data-refs.c (vect_analyze_data_refs): For basic-block
vectorization stop analysis at the first stmt we cannot compute
a data-reference for instead of giving up completely.
* gcc.dg/vect/bb-slp-30.c: New testcase.
From-SVN: r188235
Richard Guenther [Tue, 5 Jun 2012 11:27:30 +0000 (11:27 +0000)]
tree-loop-distribution.c (struct partition_s): Add has_writes member.
2012-06-05 Richard Guenther <rguenther@suse.de>
* tree-loop-distribution.c (struct partition_s): Add has_writes
member.
(partition_alloc): Initialize it.
(partition_has_writes): New function.
(rdg_flag_uses): Adjust.
(rdg_flag_vertex): Likewise.
(rdg_flag_vertex_and_dependent): Likewise.
(rdg_flag_loop_exits): Likewise.
(build_rdg_partition_for_component): Likewise.
(rdg_build_partitions): Likewise.
From-SVN: r188233
Richard Guenther [Tue, 5 Jun 2012 09:24:43 +0000 (09:24 +0000)]
re PR tree-optimization/53081 (memcpy/memset loop recognition)
2012-06-05 Richard Guenther <rguenther@suse.de>
PR tree-optimization/53081
* tree-loop-distribution.c (generate_memset_builtin): Handle all
kinds of byte-sized stores.
(classify_partition): Likewise.
(tree_loop_distribution): Adjust seed statements used for
!flag_tree_loop_distribution.
* gcc.dg/tree-ssa/ldist-19.c: New testcase.
* gcc.c-torture/execute/builtins/builtins.exp: Always pass
-fno-tree-loop-distribute-patterns.
From-SVN: r188232
Ian Lance Taylor [Tue, 5 Jun 2012 06:19:19 +0000 (06:19 +0000)]
runtime: Fix call to _dl_get_tls_static_info for i386.
From-SVN: r188230
Ian Lance Taylor [Tue, 5 Jun 2012 05:32:54 +0000 (05:32 +0000)]
mksysinfo: Fix for recent change to glibc <sys/resource.h>.
From-SVN: r188228
Mike Stump [Tue, 5 Jun 2012 03:11:59 +0000 (03:11 +0000)]
Fix typo.
From-SVN: r188227
Mike Stump [Tue, 5 Jun 2012 02:46:52 +0000 (02:46 +0000)]
Fix typo.
From-SVN: r188226
Alan Modra [Tue, 5 Jun 2012 01:59:14 +0000 (11:29 +0930)]
rs6000.c (ptr_regno_for_savres): Comment.
gcc/
* config/rs6000/rs6000.c (ptr_regno_for_savres): Comment.
(rs6000_emit_prologue): Ensure register used for inline saves
of vector regs is not the static chain register. Revise comment.
gcc/testsuite/
* gcc.target/powerpc/savres.c: Add -mdynamic-no-pic for darwin.
Check static chain in nested funcs.
From-SVN: r188225
Oleg Endo [Tue, 5 Jun 2012 00:51:04 +0000 (00:51 +0000)]
md.texi (Standard Pattern Names For Generation): Document sincos pattern.
* doc/md.texi (Standard Pattern Names For Generation): Document
sincos pattern.
From-SVN: r188219
Diego Novillo [Tue, 5 Jun 2012 00:36:08 +0000 (20:36 -0400)]
Add ChangeLog entry for previous commit.
From-SVN: r188218
Diego Novillo [Tue, 5 Jun 2012 00:28:56 +0000 (20:28 -0400)]
Extend validate_failures.py to run outside the build directory.
This patch adds three new arguments to validate_failures.py so
it can be used outside the build directory:
--ignore_missing_failures
When a failure is expected in the manifest but it is not found in
the actual results, the script produces a note alerting to this
fact. This means that the expected failure has been fixed, or it
did not run, or it may simply be flaky.
With this option, one can ask the script not to show the missing
failures.
--manifest
Name of the manifest file to use. By default, the script will
look for the manifest file in the source directory associated with
this build. With this option, one can point to any arbitrary
manifest file. I renamed the old --manifest flag to
--produce_manifest.
--results
Space-separated list of .sum files with the testing results to
check. The only content needed from these files are the lines
starting with FAIL, XPASS or UNRESOLVED.
From-SVN: r188217
GCC Administrator [Tue, 5 Jun 2012 00:17:21 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r188216
H.J. Lu [Mon, 4 Jun 2012 23:31:54 +0000 (23:31 +0000)]
Skip debug insns in ix86_sched_reorder
PR bootstrap/53555
* config/i386/i386.c (ix86_sched_reorder) Skip debug insns.
From-SVN: r188212
Jason Merrill [Mon, 4 Jun 2012 21:45:31 +0000 (17:45 -0400)]
dwarf2out.c (is_unit_die): New.
* dwarf2out.c (is_unit_die): New.
(copy_declaration_context, copy_ancestor_tree): Use it.
(copy_decls_walk): Likewise.
From-SVN: r188209
Tobias Burnus [Mon, 4 Jun 2012 21:01:02 +0000 (23:01 +0200)]
re PR fortran/50619 (Surprising interaction between -finit-real=NAN and the associate construct)
2012-06-04 Tobias Burnus <burnus@net-b.de>
PR fortran/50619
* resolve.c (build_default_init_expr): Don't initialize
ASSOCIATE names.
2012-06-04 Tobias Burnus <burnus@net-b.de>
PR fortran/50619
* gfortran.dg/init_flag_10.f90: New.
From-SVN: r188208
Paolo Carlini [Mon, 4 Jun 2012 19:27:12 +0000 (19:27 +0000)]
re PR c++/53524 (Bogus enum comparison warning)
2012-06-04 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/53524
* doc/invoke.texi (Wenum-compare): Update documentation.
/cp
2012-06-04 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/53524
* call.c (build_conditional_expr_1): Use OPT_Wenum_compare
to control enumeral mismatch in conditional expression too.
/testsuite
2012-06-04 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/53524
* g++.dg/warn/Wenum-compare-no-2: New.
From-SVN: r188204
Dodji Seketeli [Mon, 4 Jun 2012 19:19:58 +0000 (19:19 +0000)]
PR preprocessor/53463 - Fix system header detection for built-in macro tokens
The location for a built-in macro token is BUILTIN_LOCATION. When we
see that location value, we cannot know if that token was used in a
system header or not. And that can trigger some unwanted warnings on
e.g, the use of __LONG_LONG_MAX__ built-in macro in system headers
when we compile with -pedantic, like in the test case accompanying
this patch.
In that case, I think we ought to step-up to see where the built-in
macro has been expanded, until we see a location that is not for a
built-in macro. Then we can check if the resulting location is in a
system header or not.
Now that we step up to the location of first non-built-in-macro token,
it appeared that for
testsuite/c-c++-common/dfp/convert-int-saturate.c, G++ then fails to
emit the warning in:
volatile unsigned int usi;
int
main ()
{
usi = DEC32_MAX; /* { dg-warning "overflow in implicit constant conversion" } */
...
}
Because DEC32_MAX is defined in the system header float.h as a
built-in macro:
#define DEC32_MAX __DEC32_MAX__
And during the parsing of the assignment expression that should have
led to the warning above, input_location is set to the location for
the DEC32_MAX, which is actually the location for the built-in
__DECL32_MAX_EXP.
A possible fix is to use the location of the "=" operator as the
default location for assignment expressions. This is what the patch
does.
I had to adjust a couple of tests to arrange for this.
Bootstrapped and tested on x86_64-unknown-linux-gnu against trunk.
libcpp/
PR preprocessor/53463
* line-map.c (linemap_location_in_system_header_p): For built-in
macro tokens, check the first expansion point location for that is
not for a token coming from a built-in macro.
gcc/cp/
PR preprocessor/53463
* parser.c (cp_parser_assignment_expression): Use the location
for the LHS as the default location for the expression.
gcc/testsuite/
PR preprocessor/53463
* g++.dg/cpp/limits.C: New test.
* g++.dg/parse/error19.C: Adjust.
* g++.dg/warn/Wconversion-real-integer2.C: Likewise.
* g++.dg/warn/pr35635.C: Likewise.
* g++.old-deja/g++.pt/assign1.C: Likewise.
From-SVN: r188203
Robert Mason [Mon, 4 Jun 2012 19:15:21 +0000 (22:15 +0300)]
PR 53456 Fix incorrect ChangeLog entry.
From-SVN: r188202
Robert Mason [Mon, 4 Jun 2012 19:13:49 +0000 (22:13 +0300)]
PR 53456 Fix typo in gf_cputime.
2012-06-04 Robert Mason <rbmj@verizon.net>
Janne Blomqvist <jb@gcc.gnu.org>
PR fortran/53456
* intrinsics/time_1.h (gf_cputime): Fix typo in clock_gettime branch.
From-SVN: r188201
Edmar Wienskoski [Mon, 4 Jun 2012 18:44:53 +0000 (18:44 +0000)]
re PR target/53559 (ICE on altivec builtins stv[l|r]x[l])
2012-06-04 Edmar Wienskoski <edmar@freescale.com>
PR target/53559
* config/rs6000/altivec.md (altivec_stvlx): Change machine mode of
operands.
(altivec_stvlxl): Ditto.
(altivec_stvrx): Ditto.
(altivec_stvrxl): Ditto.
gcc/testsuite
2012-06-04 Edmar Wienskoski <edmar@freescale.com>
PR target/53559
* gcc.target/powerpc/cell_builtin_1.c: New test case.
* gcc.target/powerpc/cell_builtin_2.c: Ditto.
* gcc.target/powerpc/cell_builtin_3.c: Ditto.
* gcc.target/powerpc/cell_builtin_4.c: Ditto.
* gcc.target/powerpc/cell_builtin_5.c: Ditto.
* gcc.target/powerpc/cell_builtin_6.c: Ditto.
* gcc.target/powerpc/cell_builtin_7.c: Ditto.
* gcc.target/powerpc/cell_builtin_8.c: Ditto.
From-SVN: r188200
Vladimir Makarov [Mon, 4 Jun 2012 18:27:36 +0000 (18:27 +0000)]
ira-int.h (struct target_ira_int): Add member x_ira_uniform_class_p.
2012-06-04 Vladimir Makarov <vmakarov@redhat.com>
* ira-int.h (struct target_ira_int): Add member
x_ira_uniform_class_p.
(ira_uniform_class_p): New macro.
* ira.c (setup_uniform_class_p): New function.
(setup_allocno_and_important_classes): Call the function.
(print_unform_and_important_classes): New function.
(print_classes): Rename to print_translated_classes.
(ira_debug_allocno_classes): Add call of
print_unform_and_important_classes.
* ira-costs.c (setup_regno_cost_classes_by_aclass): Use uniform
classes instead of pressure classes.
From-SVN: r188199
Sterling Augustine [Mon, 4 Jun 2012 17:52:42 +0000 (17:52 +0000)]
c-pretty-print.h (pp_c_flag_gnu_v3): New enumerator.
2012-06-04 Sterling Augustine <saugustine@google.com>
* gcc/c-family/c-pretty-print.h (pp_c_flag_gnu_v3): New enumerator.
* gcc/c-family/c-pretty-print.c (pp_c_specifier_qualifier_list): Check
it at both the start and end of the function.
* gcc/cp/error.c (dump_decl): Check pp_c_flag_gnu_v3.
(decl_as_dwarf_string, lang_decl_dwarf_name): New functions.
(lang_decl_name): Handle namespace decls.
* gcc/cp/cp-tree.h: Declare decl_as_dwarf_string, lang_decl_dwarf_name.
* gcc/cp/cp-lang.c: Call them.
From-SVN: r188195
Aldy Hernandez [Mon, 4 Jun 2012 16:51:24 +0000 (16:51 +0000)]
re PR middle-end/47530 ([trans-mem] tail call optimization problem with _ITM_commitTransaction)
PR middle-end/47530
* trans-mem.c (expand_block_edges): Do not skip the first
statement when resetting the BB.
From-SVN: r188190
Richard Guenther [Mon, 4 Jun 2012 15:04:15 +0000 (15:04 +0000)]
tree-data-ref.c (stores_from_loop): Remove.
2012-06-04 Richard Guenther <rguenther@suse.de>
* tree-data-ref.c (stores_from_loop): Remove.
(stmt_with_adjacent_zero_store_dr_p): Likewise.
(stores_zero_from_loop): Likewise.
* tree-data-ref.h (stores_from_loop, stores_zero_from_loop,
stmt_with_adjacent_zero_store_dr_p, stride_of_unit_type_p): Remove.
(adjacent_store_dr_p): New function.
* tree-loop-distribution.c (generate_memset_builtin): Pass
the RDG, use the already available data-reference.
(generate_code_for_partition): Pass down RDG.
(classify_partition): Inline parts of the former
stmt_with_adjacent_zero_store_dr_p here and use adjacent_store_dr_p.
(ldist_gen): Remember if there was any detected builtin and
do less work if not and flag_tree_loop_distribution is not set.
(tree_loop_distribution): Inline and fuse stores_from_loop
and stores_zero_from_loop here.
From-SVN: r188186
Andreas Schwab [Mon, 4 Jun 2012 14:48:58 +0000 (14:48 +0000)]
* g++.dg/debug/dwarf2/nested-3.C: Allow for | comments.
From-SVN: r188185
Richard Guenther [Mon, 4 Jun 2012 13:19:17 +0000 (13:19 +0000)]
re PR lto/53471 (ICE in pp_base_format, at pretty-print.c:510 (-flto -g))
2012-06-04 Richard Guenther <rguenther@suse.de>
PR middle-end/53471
* dwarf2out.c (dwarf2out_finish): If generating LTO do not
create new assembler names.
From-SVN: r188181
Richard Guenther [Mon, 4 Jun 2012 13:18:16 +0000 (13:18 +0000)]
tree-data-ref.c (struct rdg_vertex_info): Remove.
2012-06-04 Richard Guenther <rguenther@suse.de>
* tree-data-ref.c (struct rdg_vertex_info): Remove.
(rdg_vertex_for_stmt): Simplify using gimple_uid.
(create_rdg_vertices): Pass loop argument, remove stmt to RDG index
hashtable. Record stmt data-references.
(hash_stmt_vertex_info): Remove.
(eq_stmt_vertex_info): Likewise.
(hash_stmt_vertex_del): Likewise.
(build_empty_rdg): Simplify.
(build_rdg): Adjust.
(free_rdg): Likewise.
(ref_base_address): Remove.
(have_similar_memory_accesses): Likewise.
* tree-data-ref.h (create_rdg_vertices): Remove.
(struct rdg_vertex): Add datarefs member.
(RDGV_DATAREFS): New define.
(RDG_DATAREFS): Likewise.
(have_similar_memory_accesses): Remove.
(rdg_has_similar_memory_accesses): Likewise.
* tree-loop-distribution.c (ref_base_address): Re-implement here.
(similar_memory_accesses): Re-implement using existing data-references.
(tree_loop_distribution): Initialize stmt uids for the stmt to
RDG index mapping.
* tree-vect-loop.c (vect_create_epilog_for_reduction): Only
access stmt vinfo for stmts in loop.
From-SVN: r188180
Andreas Schwab [Mon, 4 Jun 2012 13:13:09 +0000 (13:13 +0000)]
re PR target/53461 (Incorrect handling of CASE_VECTOR_PC_RELATIVE in config/m68k.md)
PR target/53461
* config/m68k/m68k.md ("tablejump"): Fix check for
CASE_VECTOR_PC_RELATIVE.
From-SVN: r188179
Steven Bosscher [Mon, 4 Jun 2012 11:17:58 +0000 (11:17 +0000)]
output.h (merge_weak, [...]): Move protos from here...
* output.h (merge_weak, assemble_alias,
initializer_constant_valid_p,
initializer_constant_valid_for_bitfield_p): Move protos from here...
* tree.h: ... to here.
* cgraphclones.c: Do not include output.h.
* gimplify.c: Likewise.
* reload.c: Likewise.
* recog.c: Likewise.
* tree-ssa-loop-ivopts.c: Likewise.
* tree-switch-conversion.c: Likewise.
* c-parser.c: Likewise.
* c-typeck.c: Likewise.
* Makefile.in: Fix dependencies.
c-family/
* c-common.c: Do not include output.h.
* c-pragma.c: Likewise.
cp/
* semantics.c: Do not include output.h.
* decl2.c: Likewise.
* friend.c: Likewise.
* typeck.c: Likewise.
* typeck2.c: Likewise.
* Make-lang.in: Fix dependencies.
ada/
* gcc-interface/utils2.c: Do not include output.h.
* gcc-interface/Make-lang.in: Fix dependencies.
From-SVN: r188178
Georg-Johann Lay [Mon, 4 Jun 2012 09:48:34 +0000 (09:48 +0000)]
re PR target/46261 (avr-gcc: Segfaults when compiled with the -mint8 option)
PR target/46261
* config/avr/avr-stdint.h: New file.
* config.gcc (avr-*-*,tm_file): Use avr/avr-stdint.h instead of
newlib-stdint.h
From-SVN: r188172
Jakub Jelinek [Mon, 4 Jun 2012 09:27:33 +0000 (11:27 +0200)]
Update Copyright years.
From-SVN: r188171
Jakub Jelinek [Mon, 4 Jun 2012 09:23:27 +0000 (11:23 +0200)]
re PR tree-optimization/53550 (ICE with -O{1,2,3} -fprefetch-loop-arrays in build2_stat, at tree.c:3803)
PR tree-optimization/53550
* tree-ssa-loop-niter.c (number_of_iterations_cond): If type
is POINTER_TYPE_P, use sizetype as step type instead of type.
* gcc.dg/pr53550.c: New test.
From-SVN: r188169
Richard Guenther [Mon, 4 Jun 2012 09:00:21 +0000 (09:00 +0000)]
tree-data-ref.c (have_similar_memory_accesses_1): Remove.
2012-06-04 Richard Guenther <rguenther@suse.de>
* tree-data-ref.c (have_similar_memory_accesses_1): Remove.
(ref_base_address_1): Likewise.
(remove_similar_memory_refs): Likewise.
* tree-data-ref.h (remove_similar_memory_refs): Remove.
* tree-loop-distribution.c (classify_partition): Do not classify
as builtin if -ftree-loop-distribute-patterns is not enabled.
(fuse_partitions_with_similar_memory_accesses): Inline ...
(ldist_gen): ... here. Fuse all non-builtin partitions if
-ftree-loop-distribution is not enabled. Properly return
the number of created partitions. Do not update SSA form here
but ...
(tree_loop_distribution): ... once here for the whole function.
Only walk innermost loops, constrain loops we consider here
further. Do not call remove_similar_memory_refs.
(distribute_loop): Do not check number of loop nodes here.
* gcc.dg/tree-ssa/ldist-11.c: Enable -ftree-loop-distribute-patterns.
* gcc.dg/tree-ssa/ldist-17.c: Likewise.
* gcc.dg/tree-ssa/ldist-pr45948.c: Likewise.
From-SVN: r188168
Steven Bosscher [Mon, 4 Jun 2012 08:09:12 +0000 (08:09 +0000)]
* Makefile.in (GIMPLE_H): Do not depend on TARGET_H.
From-SVN: r188166
Ian Lance Taylor [Mon, 4 Jun 2012 05:34:59 +0000 (05:34 +0000)]
runtime: Better SWIG interface for allocating Go memory from C/C++.
From-SVN: r188164
David S. Miller [Mon, 4 Jun 2012 01:54:59 +0000 (01:54 +0000)]
Fix bug added to sparc 64-bit sub_ddmmss() implementation.
* longlong.h [SPARC] (sub_ddmmss): Fix thinko in previous 64-bit
change.
From-SVN: r188163
GCC Administrator [Mon, 4 Jun 2012 00:18:14 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r188160
Martin Jambor [Sun, 3 Jun 2012 22:10:19 +0000 (00:10 +0200)]
ipa-prop.h (ipa_get_jf_known_type_offset): New function.
2012-06-03 Martin Jambor <mjambor@suse.cz>
* ipa-prop.h (ipa_get_jf_known_type_offset): New function.
(ipa_get_jf_known_type_base_type): Likewise.
(ipa_get_jf_known_type_component_type): Likewise.
(ipa_get_jf_constant): Likewise.
(ipa_get_jf_pass_through_formal_id): Likewise.
(ipa_get_jf_pass_through_operation): Likewise.
(ipa_get_jf_ancestor_offset): Likewise.
(ipa_get_jf_ancestor_type): Likewise.
(ipa_get_jf_ancestor_formal_id): Likewise.
(ipa_get_jf_member_ptr_pfn): Likewise.
* ipa-prop.c (ipa_set_jf_known_type): New function.
(ipa_set_jf_constant): Likewise.
(ipa_set_jf_simple_pass_through): Likewise.
(ipa_set_jf_arith_pass_through): Likewise.
(ipa_set_ancestor_jf): Likewise.
(fill_member_ptr_cst_jump_function): Moved up and renamed to
ipa_set_jf_member_ptr_cst.
(detect_type_change_1): Use the new jump function creation functions.
(compute_complex_assign_jump_func): Likewise.
(compute_complex_ancestor_jump_func): Likewise.
(compute_known_type_jump_func): Likewise.
(compute_scalar_jump_functions): Likewise.
(compute_pass_through_member_ptrs): Likewise.
(determine_cst_member_ptr): Likewise.
(combine_known_type_and_ancestor_jfs): Likewise.
(try_make_edge_direct_simple_call): Likewise.
(try_make_edge_direct_virtual_call): Likewise.
(update_indirect_edges_after_inlining): Likewise.
* ipa-cp.c (ipa_get_jf_pass_through_result): Use jump function
access functions. Incorporat NOP_EXPR and BINFO handling from its
callers.
(ipa_get_jf_ancestor_result): Likewise. Incorporate handling BINFOs
which was in its callers.
(ipa_value_from_jfunc): Use jump function access functions. Some
functionality moved to functions above.
(propagate_vals_accross_ancestor): Likewise.
(propagate_vals_accross_pass_through): Use jump function access
functions.
(propagate_accross_jump_function): Likewise.
* ipa-inline-analysis.c (remap_edge_change_prob): Use jump function
access functions.
(inline_merge_summary): Likewise.
From-SVN: r188156
Alessandro Fanfarillo [Sun, 3 Jun 2012 13:21:50 +0000 (07:21 -0600)]
re PR fortran/48831 (check.c: Constant expression (PARAMETER array element) rejected as nonconstant)
2012-06-03 Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>
Tobias Burnus <burnus@net-b.de>
PR fortran/48831
* gfortran.h (gfc_check_init_expr): Add prototype declaration
of function.
* check.c (kind_check): Change if condition to use
to gfc_check_init_expr.
* expr.c (check_init_expr): Remove forward declaration
and static keyword. Change name in gfc_check_init_expr.
2012-06-03 Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>
PR fortran/48831
* gfortran.dg/parameter_array_element_2.f90: New.
Co-Authored-By: Tobias Burnus <burnus@net-b.de>
From-SVN: r188152
John David Anglin [Sun, 3 Jun 2012 12:46:44 +0000 (12:46 +0000)]
pa.h (MAX_PCREL17F_OFFSET): Define.
* config/pa/pa.h (MAX_PCREL17F_OFFSET): Define.
* config/pa/pa.c (pa_attr_length_millicode_call): Use
MAX_PCREL17F_OFFSET instead of fixed offset.
(pa_attr_length_call): Likewise.
(pa_attr_length_indirect_call): Likewise.
From-SVN: r188151
Oleg Endo [Sun, 3 Jun 2012 11:26:54 +0000 (11:26 +0000)]
re PR target/53512 (SH Target: Allow fsca and fsrra for non-SH4A)
PR target/53512
* sh.opt (mfsca, mfsrra): New options.
* sh.md (rsqrtsf2): Use TARGET_FPU_ANY and TARGET_FSRRA condition.
(fsca): Use TARGET_FPU_ANY and TARGET_FSCA condition.
(sinssf2, cossf2): Fold expanders to ...
(sincossf3): ... this new expander. Use TARGET_FPU_ANY and
TARGET_FSCA condition.
* sh.c (sh_option_override): Handle TARGET_FSRRA and TARGET_FSCA.
* doc/invoke.texi (SH Options): Add descriptions for -mfsca,
-mno-fsca, -mfsrra, -mno-fsrra.
PR target/53512
* gcc.target/sh/pr53512-1.c: New.
* gcc.target/sh/pr53512-2.c: New.
* gcc.target/sh/pr53512-3.c: New.
* gcc.target/sh/pr53512-4.c: New.
From-SVN: r188149
Matt Turner [Sun, 3 Jun 2012 08:00:19 +0000 (08:00 +0000)]
4600.md (r4700_imul_si): New.
gcc/
2012-03-24 Matt Turner <mattst88@gmail.com>
* config/mips/4600.md (r4700_imul_si): New.
(r4700_imul_di): New.
(r4700_fmul_single): New.
(r4700_fmul_double): New.
* config/mips/mips-cpus.def: Add r4700.
* config/mips/mips.c: Likewise.
* config/mips/mips.md: Likewise.
* config/mips/mips-tables.opt: Regenerate.
From-SVN: r188148
GCC Administrator [Sun, 3 Jun 2012 00:17:34 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r188146
Steven Bosscher [Sat, 2 Jun 2012 21:51:18 +0000 (21:51 +0000)]
Restore Sparc build.
gcc/
* config/sparc/sparc.h (INITIAL_ELIMINATION_OFFSET): Split out to
new function sparc_initial_elimination_offset.
* config/sparc/sparc.c (sparc_initial_elimination_offset): New
function.
* config/sparc/sparc-protos.h (sparc_initial_elimination_offset):
Prototype it.
From-SVN: r188142
Kenneth Zadeck [Sat, 2 Jun 2012 16:08:39 +0000 (16:08 +0000)]
2012-06-2 Kenneth Zadeck <zadeck@naturalbridge.com>
* expmed.c (expand_mult, choose_multiplier): Change "2 *
HOST_BITS_PER_WIDE_INT" to "HOST_BITS_PER_DOUBLE_INT".
* expr.c (convert_modes): Likewise.
* explow.c (plus_constant): Likewise.
* fixed-value.c (fixed_saturate1, fixed_saturate2)
(do_fixed_add, do_fixed_multiply, do_fixed_multiply)
(do_fixed_multiply, do_fixed_multiply, do_fixed_divide)
(do_fixed_divide, do_fixed_divide, do_fixed_divide)
(do_fixed_divide, do_fixed_divide, do_fixed_shift, do_fixed_shift)
(do_fixed_shift, fixed_convert, fixed_convert)
(fixed_convert_from_int, fixed_convert_from_int)
(fixed_convert_from_real): Likewise.
* fold-const.c (fold_convert_const_int_from_fixed, sign_bit_p)
(native_interpret_int, fold_binary_loc, fold_ternary_loc): Likewise.
* varasm.c (output_constructor_bitfield): Likewise.
* tree-vrp.c (register_edge_assert_for_2): Likewise.
* double-int.c (rshift_double, lshift_double): Likewise.
* double-int.h (double_int_fits_in_uhwi_p, double_int, double_int): Likewise.
* simplify-rtx.c (mode_signbit_p)
(simplify_const_unary_operation, simplify_binary_operation_1)
(simplify_immed_subreg): Likewise.
* builtins.c (c_readstr, fold_builtin_bitop): Likewise.
* tree-vect-generic.c (build_replicated_const): Likewise.
* dbxout.c (stabstr_O): Likewise.
* emit-rtl.c (immed_double_int_const, immed_double_const)
(gen_lowpart_common, init_emit_once): Likewise.
* tree.c (integer_pow2p, tree_log2, tree_floor_log2)
(widest_int_cst_value, upper_bound_in_type): Likewise.
* stor-layout.c (initialize_sizetypes, fixup_signed_type)
(fixup_unsigned_type): Likewise.
* real.c (real_to_integer2, real_from_integer): Likewise.
* dwarf2out.c (size_of_loc_descr, size_of_die, output_die)
(clz_loc_descriptor, mem_loc_descriptor): Likewise.
From-SVN: r188139
Jason Merrill [Sat, 2 Jun 2012 04:03:51 +0000 (00:03 -0400)]
re PR c++/52973 (visibility attribute for class is not passed to its members)
PR c++/52973
* parser.c (cp_parser_class_head): Apply attributes here.
* semantics.c (begin_class_definition): Not here.
* cp-tree.h: Adjust.
From-SVN: r188137
GCC Administrator [Sat, 2 Jun 2012 00:18:07 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r188133
Jason Merrill [Fri, 1 Jun 2012 21:19:22 +0000 (17:19 -0400)]
re PR c++/52725 (error: "capture of non-variable" for new-expression incorrectly parsed as lambda-expression)
PR c++/52725
* parser.c (cp_parser_binary_expression): Bail early if we're parsing
tentatively and the LHS has a parse error.
From-SVN: r188127
Eric Botcazou [Fri, 1 Jun 2012 17:01:17 +0000 (17:01 +0000)]
re PR tree-optimization/53501 (scev introduces signed overflow)
PR middle-end/53501
* fold-const.c (fold_binary_loc): Refine previous change.
testsuite/
* c-c++-common/restrict-2.c: Revert previous change.
From-SVN: r188118
Jason Merrill [Fri, 1 Jun 2012 16:55:17 +0000 (12:55 -0400)]
re PR c++/53137 (g++ segfault)
PR c++/53137
* pt.c (instantiate_class_template_1): Set LAMBDA_EXPR_THIS_CAPTURE.
(instantiate_decl): Don't push_to_top_level for local class methods.
(instantiate_class_template_1): Or for local classes.
From-SVN: r188117
Jason Merrill [Fri, 1 Jun 2012 16:55:08 +0000 (12:55 -0400)]
re PR c++/53484 ([c++11] Wrong auto in lambdas in function templates)
PR c++/53484
* pt.c (do_auto_deduction): Don't try to deduce from a
type-dependent initializer.
From-SVN: r188116
Olivier Hainque [Fri, 1 Jun 2012 16:41:25 +0000 (16:41 +0000)]
vxworks.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Restore the "do {" part of the do-while(0) loop.
* config/rs6000/vxworks.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Restore the
"do {" part of the do-while(0) loop.
From-SVN: r188114
Paolo Carlini [Fri, 1 Jun 2012 16:11:38 +0000 (16:11 +0000)]
re PR c++/26155 (ICE after error with namespace alias)
/cp
2012-06-01 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/26155
* name-lookup.c (push_namespace): When error recovery is
impossible just error out in duplicate_decls.
/testsuite
2012-06-01 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/26155
* g++.dg/parse/namespace-alias-1.C: New.
From-SVN: r188113
Aldy Hernandez [Fri, 1 Jun 2012 15:44:10 +0000 (15:44 +0000)]
tree-ssa-loop-im.c (execute_sm): Do not check flag_tm.
* tree-ssa-loop-im.c (execute_sm): Do not check flag_tm.
* gimple.h (block_in_transaction): Check for flag_tm.
From-SVN: r188112
Yuri Rumyantsev [Fri, 1 Jun 2012 11:56:00 +0000 (11:56 +0000)]
i386.c (x86_sched_reorder): New function.
* config/i386/i386.c (x86_sched_reorder): New function.
Added new function x86_sched_reorder.
From-SVN: r188107
Richard Guenther [Fri, 1 Jun 2012 11:38:10 +0000 (11:38 +0000)]
tree-loop-distribution.c (stmt_has_scalar_dependences_outside_loop): Handle PHIs.
2012-06-01 Richard Guenther <rguenther@suse.de>
* tree-loop-distribution.c (stmt_has_scalar_dependences_outside_loop):
Handle PHIs.
(classify_partition): Likewise.
From-SVN: r188106
Richard Guenther [Fri, 1 Jun 2012 08:55:04 +0000 (08:55 +0000)]
tree-loop-distribution.c (enum partition_kind): New enum.
2012-06-01 Richard Guenther <rguenther@suse.de>
* tree-loop-distribution.c (enum partition_kind): New enum.
(struct partition_s): Add kind and main_stmt members.
(partition_alloc): Initialize kind to PKIND_NORMAL.
(partition_builtin_p): New function.
(copy_loop_before): Remove failure path and assert instead.
(generate_loops_for_partition): Likewise.
(generate_memset_zero): Fold into ...
(generate_memset_builtin): ... this.
(classify_partition): New function with code from
can_generate_builtin and generate_builtin.
(generate_builtin): Remove.
(can_generate_builtin): Likewise.
(fuse_partitions_with_similar_memory_accesses): Call
partition_builtin_p instead of can_generate_builtin.
(rdg_build_partitions): Do not call
fuse_partitions_with_similar_memory_accesses here...
(ldist_gen): ... but here after classifying all partitions.
Remove failure path of generate_code_for_partition.
(generate_code_for_partition): Generate code according
to partition classification.
From-SVN: r188104
Manuel López-Ibáñez [Fri, 1 Jun 2012 08:47:06 +0000 (08:47 +0000)]
re PR c++/50134 (-Wmissing-prototypes doesn't work for C++)
2012-06-01 Manuel López-Ibáñez <manu@gcc.gnu.org>
Jonathan Wakely <jwakely.gcc@gmail.com>
PR c++/50134
* doc/invoke.texi (Warning Options): Explain purpose and differences
between -Wmissing-prototypes and -Wmissing-declarations.
Co-Authored-By: Jonathan Wakely <jwakely.gcc@gmail.com>
From-SVN: r188103
Christian Bruel [Fri, 1 Jun 2012 07:55:39 +0000 (09:55 +0200)]
Allow --specs options.
2012-05-30 Christian Bruel <christian.bruel@st.com>
* gcc.c (save_switch): Add user_p parameter.
(read_specs): Likewise.
(set_specs): Likewise.
(validate_switches): Likewise.
(validate_switches_from_spec): Likewise.
(validate_all_switches): Pass on user_p parameter.
(struct spec_list): Add user_p field.
(struct switchstr): Add known field.
(save_switch): Add known parameter.
(INIT_STATIC_SPEC): Initialize user_p;
(driver_unknown_option_callbac): call save_switch if
OPT_SPECIAL_unknown.
(driver_handle_option): Propagate OPT_specs.
(do_spec_1): Set validated only if known.
(check_live_switch): Likewise.
(validate_switches): Set validated if known or user_spec.
From-SVN: r188102
Eric Botcazou [Fri, 1 Jun 2012 07:33:38 +0000 (07:33 +0000)]
re PR ada/53517 (gnat.dg/lto14.adb FAILs)
PR ada/53517
* gnat.dg/lto14.adb: Skip on Solaris.
From-SVN: r188100
Tobias Burnus [Fri, 1 Jun 2012 05:53:31 +0000 (07:53 +0200)]
chmod.c (chmod_func): On MinGW, don't set is_dir
2012-06-01 Tobias Burnus <burnus@net-b.de>
* intrinsics/chmod.c (chmod_func): On MinGW, don't set is_dir
* and
fix octal-mode handling.
* io/unit.c (get_internal_unit): Add cast.
* io/unix.c (min): Undef "min" before defining it.
* runtime/backtrace.c (show_backtrace): Move label into
ifndef __MINGW__ block.
From-SVN: r188098
Hans-Peter Nilsson [Fri, 1 Jun 2012 05:51:07 +0000 (05:51 +0000)]
sync-1-v10.c, [...]: New tests.
* gcc.target/cris/sync-1-v10.c,
gcc.target/cris/sync-1-v32.c, gcc.target/cris/sync-1.c,
gcc.target/cris/sync-2c.c, gcc.target/cris/sync-2i.c,
gcc.target/cris/sync-2s.c, gcc.target/cris/sync-3i.c,
gcc.target/cris/sync-3s.c, gcc.target/cris/sync-4c.c,
gcc.target/cris/sync-4i.c, gcc.target/cris/sync-4s.c,
gcc.target/cris/torture/sync-mis-op-i-1.c,
gcc.target/cris/torture/sync-mis-op-i-1a.c,
gcc.target/cris/torture/sync-mis-op-i-2.c,
gcc.target/cris/torture/sync-mis-op-i-2a.c,
gcc.target/cris/torture/sync-mis-op-i-3.c,
gcc.target/cris/torture/sync-mis-op-i-3a.c,
gcc.target/cris/torture/sync-mis-op-s-1.c,
gcc.target/cris/torture/sync-mis-op-s-1a.c,
gcc.target/cris/torture/sync-mis-xchg-i-1.c,
gcc.target/cris/torture/sync-mis-xchg-i-1a.c,
gcc.target/cris/torture/sync-mis-xchg-i-2.c,
gcc.target/cris/torture/sync-mis-xchg-i-2a.c,
gcc.target/cris/torture/sync-mis-xchg-i-3.c,
gcc.target/cris/torture/sync-mis-xchg-i-3a.c,
gcc.target/cris/torture/sync-mis-xchg-s-1.c,
gcc.target/cris/torture/sync-mis-xchg-s-1a.c: New tests.
From-SVN: r188097
Hans-Peter Nilsson [Fri, 1 Jun 2012 05:49:16 +0000 (05:49 +0000)]
Add CRIS atomic patterns for 1, 2, and 4 bytes.
* config/cris/cris.c (cris_emit_trap_for_misalignment): New function.
* config/cris/cris-protos.h: Declare it.
* config/cris/cris.h [!TARGET_DEFAULT, TARGET_CPU_DEFAULT == 32]
(TARGET_DEFAULT): Add alignment by 32.
[!TARGET_DEFAULT, TARGET_CPU_DEFAULT == 10] (TARGET_DEFAULT): New
case, as TARGET_CPU_DEFAULT == 0 but with alignment as for
TARGET_CPU_DEFAULT == 32.
(TARGET_TRAP_UNALIGNED_ATOMIC): New macro.
* config/cris/cris.md: Include sync.md. Avoid allocating specific
numbers by replacing the define_constants for all UNSPECs with the
equivalent define_c_enum construct.
* config/cris/cris.opt (mtrap-unaligned-atomic): New option.
* config/cris/sync.md: New file.
From-SVN: r188096
Jonathan Wakely [Fri, 1 Jun 2012 00:47:32 +0000 (00:47 +0000)]
* doc/xml/manual/status_cxx2011.xml: Correct C++11 status table.
From-SVN: r188095
GCC Administrator [Fri, 1 Jun 2012 00:18:00 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r188094
David S. Miller [Fri, 1 Jun 2012 00:12:22 +0000 (00:12 +0000)]
Sparc longlong.h enhancements.
libgcc/
* longlong.h [SPARC] (umul_ppmm, udiv_qrnnd): Use hardware integer multiply
and divide instructions on 32-bit when V9.
(add_ssaaaa, sub_ddmmss): Convert to branchless code on 64-bit.
From-SVN: r188090
Benjamin Kosnik [Thu, 31 May 2012 23:02:18 +0000 (23:02 +0000)]
re PR libstdc++/53543 ([unordered_map] conflict with __is_convertible clang intrinsic)
2012-05-31 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/53543
* include/bits/hashtable_policy.h (_Insert::__is_convertible):
Rename to __is_conv to avoid clash with clang built-in.
From-SVN: r188088
Matt Turner [Thu, 31 May 2012 21:32:01 +0000 (21:32 +0000)]
4600.md (r4600_imul_si): Rename from r4600_imul.
gcc/
2012-02-24 Matt Turner <mattst88@gmail.com>
* config/mips/4600.md (r4600_imul_si): Rename from r4600_imul.
(r4600_imul_di): New.
(r4600_idiv_si): Rename from r4600_idiv.
(r4600_idiv_di): New.
From-SVN: r188083
Steven Bosscher [Thu, 31 May 2012 20:19:00 +0000 (20:19 +0000)]
output.h (__gcc_host_wide_int__): Move to hwint.h.
* output.h (__gcc_host_wide_int__): Move to hwint.h.
(decl_default_tls_model): Move to tree.h
(dump_file): Move to system.h.
(default_stabs_asm_out_destructor, default_stabs_asm_out_constructor,
dbxout_int, dbxout_stabd, dbxout_begin_stabn, dbxout_begin_stabn_sline,
dbxout_begin_empty_stabs, dbxout_begin_simple_stabs,
dbxout_begin_simple_stabs_desc, dbxout_stab_value_zero,
dbxout_stab_value_zero, dbxout_stab_value_label_diff,
dbxout_stab_value_internal_label,
dbxout_stab_value_internal_label_diff): Move from here ...
* dbxout.h: ... to here.
* system.h (dump_file): Moved here from output.h.
* hwint.h (__gcc_host_wide_int__): Moved here from output.h.
* tree.h (decl_default_tls_model): Moved here from output.h.
* varasm.c (default_stabs_asm_out_destructor,
default_stabs_asm_out_constructor): Move from here ...
* dbxout.c: ... to here.
* gcov-dump.c (dump_file): Rename to dump_gcov_file. Update callers.
* collect2.h (dump_file): Rename to dump_ld_file.
* collect2.c: Likewise.
* tlink.c: Likewise.
* alias.c: Do not include output.h.
* auto-inc-dec.c: Likewise.
* bt-load.c: Likewise.
* caller-save.c: Likewise.
* cfg.c: Likewise.
* cfgbuild.c: Likewise.
* cfgcleanup.c: Likewise.
* cfglayout.c: Likewise.
* cfgloop.c: Likewise.
* cfgloopanal.c: Likewise.
* cfgloopmanip.c: Likewise.
* cfgrtl.c: Likewise.
* cgraph.c: Likewise.
* cgraphclones.c: Likewise.
* combine-stack-adj.c: Likewise.
* combine.c: Likewise.
* cprop.c: Likewise.
* cse.c: Likewise.
* cselib.c: Likewise.
* dbgcnt.c: Likewise.
* df-problems.c: Likewise.
* df-scan.c: Likewise.
* dojump.c: Likewise.
* fwprop.c: Likewise.
* gcse.c: Likewise.
* graph.c: Likewise.
* haifa-sched.c: Likewise.
* hw-doloop.c: Likewise.
* ipa-inline-transform.c: Likewise.
* ipa-pure-const.c: Likewise.
* ipa-reference.c: Likewise.
* ipa-utils.c: Likewise.
* ira-build.c: Likewise.
* ira-emit.c: Likewise.
* lcm.c: Likewise.
* loop-doloop.c: Likewise.
* loop-invariant.c: Likewise.
* loop-iv.c: Likewise.
* loop-unroll.c: Likewise.
* loop-unswitch.c: Likewise.
* lto-cgraph.c: Likewise.
* lto-section-in.c: Likewise.
* lto-streamer-in.c: Likewise.
* mcf.c: Likewise.
* mode-switching.c: Likewise.
* postreload-gcse.c: Likewise.
* postreload.c: Likewise.
* predict.c: Likewise.
* profile.c: Likewise.
* ree.c: Likewise.
* reg-stack.c: Likewise.
* regcprop.c: Likewise.
* regmove.c: Likewise.
* regstat.c: Likewise.
* reload1.c: Likewise.
* sched-ebb.c: Likewise.
* sel-sched-dump.c: Likewise.
* simplify-rtx.c: Likewise.
* stor-layout.c: Likewise.
* store-motion.c: Likewise.
* tracer.c: Likewise.
* tree-affine.c: Likewise.
* tree-cfg.c: Likewise.
* tree-cfgcleanup.c: Likewise.
* tree-dfa.c: Likewise.
* tree-into-ssa.c: Likewise.
* tree-nomudflap.c: Likewise.
* tree-optimize.c: Likewise.
* tree-pretty-print.c: Likewise.
* tree-profile.c: Likewise.
* tree-ssa-address.c: Likewise.
* tree-ssa-ccp.c: Likewise.
* tree-ssa-copy.c: Likewise.
* tree-ssa-dom.c: Likewise.
* tree-ssa-loop-ch.c: Likewise.
* tree-ssa-loop-im.c: Likewise.
* tree-ssa-loop-manip.c: Likewise.
* tree-ssa-loop-niter.c: Likewise.
* tree-ssa-loop-prefetch.c: Likewise.
* tree-ssa-loop-unswitch.c: Likewise.
* tree-ssa-loop.c: Likewise.
* tree-ssa-propagate.c: Likewise.
* tree-ssa-structalias.c: Likewise.
* tree-ssa-tail-merge.c: Likewise.
* tree-ssa-threadedge.c: Likewise.
* tree-ssa-threadupdate.c: Likewise.
* tree-ssa-uncprop.c: Likewise.
* tree-ssa-uninit.c: Likewise.
* tree-ssa.c: Likewise.
* value-prof.c: Likewise.
* var-tracking.c: Likewise.
* web.c: Likewise.
* config/m32r/m32r.c: Include dbxout.h.
* config/pa/pa.c: Likewise.
* config/rs6000/rs6000.c: Likewise.
* Makefile.in: Fix dependencies.
* config/rs6000/t-rs5000: Likewise.
c-family/
* c-ada-spec.c: Do not include output.h.
* c-semantics.c: Likewise.
cp/
* call.c: Do not include output.h.
* class.c: Likewise.
* except.c: Likewise.
* friend.c: Likewise.
* init.c: Likewise.
* lex.c: Likewise.
* method.c: Likewise.
* parser.c: Likewise.
* pt.c: Likewise.
* rtti.c: Likewise.
* search.c: Likewise.
objc/
* objc-act.c: Do not include output.h.
fortran/
* trans-common.c: Do not include output.h.
* trans-decl.c: Likewise.
java/
* resource.c: Do not include output.h.
From-SVN: r188082
Aldy Hernandez [Thu, 31 May 2012 19:46:43 +0000 (19:46 +0000)]
re PR tree-optimization/52558 (write introduction incorrect wrt the C++11 memory model)
PR tree-optimization/52558
* cfg.c (alloc_aux_for_edge): Fix comment.
(alloc_aux_for_edge): Remove static.
* basic-block.h (alloc_aux_for_edge): Protoize.
* tree-ssa-loop-im.c (execute_sm_if_changed): New.
(execute_sm_if_changed_flag): New.
(execute_sm_if_changed_flag_set): New.
(execute_sm): Do not generate data races unless requested.
(tree_ssa_lim_initialize): Call alloc_aux_for_edges.
(tree_ssa_lim_finalize): Call free_aux_for_edges.
* gimple.h (block_in_transaction): New.
(gimple_in_transaction): Use block_in_transaction.
From-SVN: r188081
Benjamin Kosnik [Thu, 31 May 2012 18:51:27 +0000 (18:51 +0000)]
re PR target/51007 (Quadmath I/O doesn't work on MinGW)
2012-05-31 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/51007
* configure.ac: Allow gnu, gnu* variants for --enable-symvers argument.
* configure: Regenerated.
From-SVN: r188076
Diego Novillo [Thu, 31 May 2012 18:01:15 +0000 (14:01 -0400)]
Add new skeleton ChangeLog file generator to contrib/
This script analyzes a .diff file and generates a skeleton ChangeLog
entry for it. It tries fairly hard to find function names, so it's
important to use the -p switch with diff.
I wrote the initial code a while ago. Cary added a bunch of smarts to
make it understand C++ and guess the function names better than the
original version.
2012-05-31 Diego Novillo <dnovillo@google.com>
Cary Coutant <ccoutant@google.com>
* mklog: New.
Co-Authored-By: Cary Coutant <ccoutant@google.com>
From-SVN: r188072