Janus Weil [Mon, 10 Dec 2012 23:17:43 +0000 (00:17 +0100)]
re PR fortran/52909 ([F03] Procedure pointers not private to modules)
2012-12-10 Janus Weil <janus@gcc.gnu.org>
PR fortran/52909
* trans-decl.c (get_proc_pointer_decl): Apply name mangling.
2012-12-10 Janus Weil <janus@gcc.gnu.org>
PR fortran/52909
* gfortran.dg/proc_ptr_39.f90: New test case.
From-SVN: r194375
Xinliang David Li [Mon, 10 Dec 2012 22:28:28 +0000 (22:28 +0000)]
Enable push/pop for latest x86 CPUs
From-SVN: r194374
Steve Ellcey [Mon, 10 Dec 2012 22:27:49 +0000 (22:27 +0000)]
gnu-user.h (NO_SHARED_SPECS): Add space before option.
2012-12-10 Steve Ellcey <sellcey@mips.com>
* config/mips/gnu-user.h (NO_SHARED_SPECS): Add space before option.
From-SVN: r194373
Steve Ellcey [Mon, 10 Dec 2012 22:19:16 +0000 (22:19 +0000)]
re PR target/54061 (gcc.c-torture/compile/mipscop-*.c ICEs with -g)
2012-12-10 Steve Ellcey <sellcey@mips.com>
PR target/54061
rtl.h (IGNORED_DWARF_REGNUM): New.
* dwarf2out.c (reg_loc_descriptor): Check for IGNORED_DWARF_REGNUM.
(mem_loc_descriptor): Ditto.
* config/mips/mips.h (ALL_COP_REG_FIRST): New.
(ALL_COP_REG_LAST): New.
(ALL_COP_REG_NUM): Redefine using above macros.
* config/mips/mips.c (mips_option_override): Set mips_dbx_regno
coprocessor entries to IGNORED_DWARF_REGNUM.
From-SVN: r194372
Richard Sandiford [Mon, 10 Dec 2012 20:22:48 +0000 (20:22 +0000)]
octeon-bbit-2.c: Restructure loops so that no code duplication is required.
gcc/testsuite/
* gcc.target/mips/octeon-bbit-2.c: Restructure loops so that no
code duplication is required. Allow BNE to appear.
From-SVN: r194370
Eric Botcazou [Mon, 10 Dec 2012 20:01:26 +0000 (20:01 +0000)]
Make-lang.in (cp/typeck.o): Add dependency on $(PARAMS_H).
* Make-lang.in (cp/typeck.o): Add dependency on $(PARAMS_H).
(cp/name-lookup.o): Likewise.
From-SVN: r194369
Richard Sandiford [Mon, 10 Dec 2012 19:55:01 +0000 (19:55 +0000)]
ext-2.c: Require -mlong64.
gcc/testsuite/
* gcc.target/mips/ext-2.c: Require -mlong64.
From-SVN: r194368
Sriraman Tallam [Mon, 10 Dec 2012 18:07:36 +0000 (18:07 +0000)]
Fix ChangeLog entry, move entry from toplevel ChangeLog to gcc/ChangeLog.
From-SVN: r194364
Steven Bosscher [Mon, 10 Dec 2012 17:58:45 +0000 (17:58 +0000)]
* decl2.c (cp_write_global_declarations): Return after writing a PCH.
From-SVN: r194363
H.J. Lu [Mon, 10 Dec 2012 14:43:54 +0000 (14:43 +0000)]
Record the global variables if WPA isn't enabled
PR lto/55466
* lto-symtab.c (lto_symtab_merge_decls_1): Don't record the
prevailing variable.
* lto.c (lto_register_var_decl_in_symtab): Don't record static
variables.
(lto_main): Record the global variables if WPA isn't enabled.
From-SVN: r194359
Richard Biener [Mon, 10 Dec 2012 14:00:25 +0000 (14:00 +0000)]
re PR tree-optimization/55107 (GCC in an infinite loop in PRE)
2012-12-10 Richard Biener <rguenther@suse.de>
PR tree-optimization/55107
* tree-ssa-pre.c (struct pre_stats): Remove constified field.
(bitmap_set_replace_value): Add gcc_unreachable.
(do_regular_insertion): Re-write all_same handling. Insert
an assignment instead of a PHI in this case.
(eliminate_bb): Record availability also for SSA names defined
by a constant.
(do_pre): Do not record constified events.
(execute_fre): Likewise.
* gcc.dg/torture/pr55107.c: New testcase.
* gcc.dg/tree-ssa/ssa-pre-5.c: Adjust.
From-SVN: r194358
Andreas Krebbel [Mon, 10 Dec 2012 13:15:05 +0000 (13:15 +0000)]
spu.md: Replace "operands" with "operands != NULL" in insn conditions.
2012-12-10 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/spu/spu.md: Replace "operands" with "operands != NULL" in
insn conditions.
From-SVN: r194357
Jakub Jelinek [Mon, 10 Dec 2012 12:19:10 +0000 (13:19 +0100)]
asan_test.cc: Sync from upstream.
* g++.dg/asan/asan_test.cc: Sync from upstream.
* g++.dg/asan/asan_test_utils.h: Likewise.
From-SVN: r194356
Jakub Jelinek [Mon, 10 Dec 2012 12:14:36 +0000 (13:14 +0100)]
asan.c (asan_init_shadow_ptr_types): Move earlier in the file.
* asan.c (asan_init_shadow_ptr_types): Move earlier in the file.
Call initialize_sanitizer_builtins at the end.
(asan_pp_string): Use TREE_TYPE (shadow_ptr_types[0])
as character type instead of char_type_node.
(asan_emit_stack_protection): Call asan_init_shadow_ptr_types
if shadow_ptr_types isn't initialized.
(asan_protect_global): Return true for STRING_CSTs except those
created by asan_pp_string.
(count_string_csts, add_string_csts): New functions.
(struct asan_add_string_csts_data): New type.
(asan_finish_file): Clear flag_asan at the beginning, restore at the
end. Traverse constant_pool_htab () to look for protected
STRING_CSTs. Don't call initialize_sanitizer_builtins,
instead call asan_init_shadow_ptr_types if shadow_ptr_types isn't
initialized yet.
(asan_instrument): Don't call initialize_sanitizer_builtins.
* varasm.c (output_constant_def_contents): If STRING_CST should be
asan protected, align it sufficiently and emit padding after it.
(categorize_decl_for_section): If flag_asan, don't put STRING_CSTs
that should be asan protected into mergeable sections. For
-fmerge-all-constants, ignore it for -fmudflap or if decl is
asan protected.
From-SVN: r194355
Kyrylo Tkachov [Mon, 10 Dec 2012 11:09:12 +0000 (11:09 +0000)]
neon.ml (opcode): Add Vrintn, Vrinta, Vrintp, Vrintm, Vrintz to type.
gcc/ChangeLog
2012-12-10 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/neon.ml (opcode): Add Vrintn, Vrinta, Vrintp, Vrintm,
Vrintz to type.
(type features): Add Requires_arch type constructor.
(ops): Define Vrintn, Vrinta, Vrintp, Vrintm, Vrintz features.
* config/arm/neon-docgen.ml (intrinsic_groups): Define Vrintn,
Vrinta, Vrintp, Vrintm, Vrintz, Vrintx.
* config/arm/neon-testgen.ml (effective_target): Define check for
Requires_arch 8.
* config/arm/neon-gen.ml
(print_feature_test_start): Handle Requires_arch.
(print_feature_test_end): Likewise.
Add 2012 to Copyright notice.
* doc/arm-neon-intrinsics.texi: Regenerate.
* config/arm/arm_neon.h: Regenerate.
gcc/testsuite/ChangeLog
2012-12-10 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* gcc.target/arm/neon/vrndaf32.c: New test.
* gcc.target/arm/neon/vrndqaf32.c: Likewise.
* gcc.target/arm/neon/vrndf32.c: Likewise.
* gcc.target/arm/neon/vrndqf32.c: Likewise.
* gcc.target/arm/neon/vrndmf32.c: Likewise.
* gcc.target/arm/neon/vrndqmf32.c: Likewise.
* gcc.target/arm/neon/vrndnf32.c: Likewise.
* gcc.target/arm/neon/vrndqnf32.c: Likewise.
* gcc.target/arm/neon/vrndpf32.c: Likewise.
* gcc.target/arm/neon/vrndqpf32.c: Likewise.
From-SVN: r194353
Kai Tietz [Mon, 10 Dec 2012 10:00:19 +0000 (11:00 +0100)]
* stmt.c (expand_sjlj_dispatch_table): Fix off by one.
From-SVN: r194351
Kai Tietz [Mon, 10 Dec 2012 09:57:02 +0000 (10:57 +0100)]
re PR bootstrap/53912 (bootstrap fails using default c++ mode in stage 2 and 3 for native x86_64-w64-mingw32)
PR target/53912
* stmt.c (compute_cases_per_edge): Cast from pointer via intptr_t.
(expand_case): Likewise.
From-SVN: r194350
Kai Tietz [Mon, 10 Dec 2012 09:53:08 +0000 (10:53 +0100)]
re PR bootstrap/53912 (bootstrap fails using default c++ mode in stage 2 and 3 for native x86_64-w64-mingw32)
PR target/53912
* print-tree.c (print_node): Cast from pointer via uintptr_t.
From-SVN: r194348
Matthias Klose [Mon, 10 Dec 2012 09:08:12 +0000 (09:08 +0000)]
Makefile.am (libstdc++-symbols.ver): Use CONFIG_HEADER.
2012-12-10 Matthias Klose <doko@ubuntu.com>
* src/Makefile.am (libstdc++-symbols.ver): Use CONFIG_HEADER.
* src/Makefile.in: Regenerate.
From-SVN: r194346
Jakub Jelinek [Mon, 10 Dec 2012 07:44:18 +0000 (08:44 +0100)]
asan.c (instrument_derefs): Handle bitfield COMPONENT_REFs accesses as reads/writes to their...
* asan.c (instrument_derefs): Handle bitfield COMPONENT_REFs
accesses as reads/writes to their DECL_BIT_FIELD_REPRESENTATIVE.
From-SVN: r194344
GCC Administrator [Mon, 10 Dec 2012 00:19:28 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r194342
John David Anglin [Sun, 9 Dec 2012 18:27:21 +0000 (18:27 +0000)]
gcov-12.c: Fix dg order.
* gcc.misc-tests/gcov-12.c: Fix dg order.
From-SVN: r194338
John David Anglin [Sun, 9 Dec 2012 18:24:27 +0000 (18:24 +0000)]
re PR middle-end/54470 (FAIL: gcc.dg/ipa/iinline-4.c scan-ipa-dump inline "hooray4[^\\n]*inline copy in test4")
PR middle-end/54470
* gcc.dg/ipa/iinline-4.c: xfail hooray4 test on 32-bit hppa*-*-*.
From-SVN: r194337
John David Anglin [Sun, 9 Dec 2012 18:21:35 +0000 (18:21 +0000)]
pr47917.c: Change "dg-xfail-if" to "dg-xfail-run-if" for *-*-hpux10*.
* gcc.dg/torture/pr47917.c: Change "dg-xfail-if" to "dg-xfail-run-if"
for *-*-hpux10*.
From-SVN: r194335
Uros Bizjak [Sun, 9 Dec 2012 18:15:59 +0000 (19:15 +0100)]
re PR target/55344 (Cross compiling for alpha-linux fails because <signal.h> doesn't exist)
PR target/55344
* config/alpha/linux-unwind.h: Disable when inhibit_libc is defined.
From-SVN: r194334
John David Anglin [Sun, 9 Dec 2012 17:41:09 +0000 (17:41 +0000)]
20030711-1.c: Define MAP_FAILED if not defined.
* gcc.dg/
20030711-1.c: Define MAP_FAILED if not defined.
* gcc.dg/
20050826-1.c: Likewise.
From-SVN: r194333
Tobias Burnus [Sun, 9 Dec 2012 15:29:32 +0000 (16:29 +0100)]
trans-array.c (gfc_deallocate_scalar_with_status): Use NULL_TREE in the call to gfc_deallocate_scalar_with_status.
2012-12-09 Tobias Burnus <burnus@net-b.de>
* trans-array.c (gfc_deallocate_scalar_with_status): Use
NULL_TREE in the call to gfc_deallocate_scalar_with_status.
* trans-decl.c (gfc_trans_deferred_vars): Pass symbol.
* trans-stmt.c (gfc_trans_deallocate): Pass polymorphic
* variable.
From-SVN: r194332
Eric Botcazou [Sun, 9 Dec 2012 14:43:34 +0000 (14:43 +0000)]
vect9.adb: Add -w to dg-options.
* gnat.dg/vect9.adb: Add -w to dg-options.
* gnat.dg/vect10.adb: Likewise.
From-SVN: r194331
Andreas Schwab [Sun, 9 Dec 2012 14:31:27 +0000 (14:31 +0000)]
libstdc++.exp (dg-test): Unset testname_with_flags after running the test.
* testsuite/lib/libstdc++.exp (dg-test): Unset testname_with_flags
after running the test.
From-SVN: r194330
Thomas Koenig [Sun, 9 Dec 2012 09:15:36 +0000 (09:15 +0000)]
re PR fortran/55593 (Bogus error on passing DO LOOP variable)
2012-12-09 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/55593
* frontend-passes.c (doloop_code): Use resolved_sym
instead of n.sym->formal for formal argument list
to get the correct version for all generic subroutines.
2012-12-09 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/55593
* gfortran.dg/do_check_8.f90: New test.
From-SVN: r194329
GCC Administrator [Sun, 9 Dec 2012 00:18:36 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r194328
Eric Botcazou [Sat, 8 Dec 2012 18:07:14 +0000 (18:07 +0000)]
Fix typo
From-SVN: r194325
Eric Botcazou [Sat, 8 Dec 2012 15:53:39 +0000 (15:53 +0000)]
lto-streamer-out.c (lto_write_tree): Do not reset the DECL_INITIAL of variables in the global contant pool.
* lto-streamer-out.c (lto_write_tree): Do not reset the DECL_INITIAL of
variables in the global contant pool.
From-SVN: r194324
Eric Botcazou [Sat, 8 Dec 2012 12:13:44 +0000 (12:13 +0000)]
trans.c (gnat_to_gnu): Assert that the type of the prefix is ultimately an array.
* gcc-interface/trans.c (gnat_to_gnu) <N_Indexed_Component>: Assert
that the type of the prefix is ultimately an array.
From-SVN: r194323
Steven Bosscher [Sat, 8 Dec 2012 12:12:50 +0000 (12:12 +0000)]
re PR rtl-optimization/55158 (segfault in schedule_region at -O3)
PR rtl-optimization/55158
* sched-rgn.c (bb_state_array, bb_state): Add some explaining
comment, and initialize to NULL explicitly.
(realloc_bb_state_array): New function.
(free_bb_state_array): New function.
(schedule_region): Call realloc_bb_state_array after schedule_block.
(sched_rgn_init): Use realloc_bb_state_array to initialize bb_state.
(sched_rgn_finish): Use free_bb_state_array to free it.
From-SVN: r194322
Eric Botcazou [Sat, 8 Dec 2012 11:57:15 +0000 (11:57 +0000)]
trans.c (Subprogram_Body_to_gnu): Be prepared for a by-ref VAR_DECL in the case of an Out parameter passed by copy.
* gcc-interface/trans.c (Subprogram_Body_to_gnu): Be prepared for a
by-ref VAR_DECL in the case of an Out parameter passed by copy.
From-SVN: r194321
Eric Botcazou [Sat, 8 Dec 2012 11:44:05 +0000 (11:44 +0000)]
* tree-ssa-loop-im.c (for_each_index) <CONST_DECL>: New case.
From-SVN: r194320
Jason Merrill [Sat, 8 Dec 2012 03:31:37 +0000 (22:31 -0500)]
re PR c++/55127 (Incorrect "dependent scope" error with partial specialization of non-type parameter)
PR c++/55127
* search.c (accessible_in_template_p): New.
* cp-tree.h: Declare it.
* pt.c (instantiation_dependent_scope_ref_p): New.
(value_dependent_expression_p): Use it.
(instantiation_dependent_r): Likewise.
* semantics.c (finish_decltype_type): Handle SCOPE_REF.
From-SVN: r194318
Jason Merrill [Sat, 8 Dec 2012 03:31:25 +0000 (22:31 -0500)]
re PR c++/55419 (ICE in gimplify_init_ctor_preeval, at gimplify.c:3587)
PR c++/55419
* tree.c (build_target_expr): Don't set TREE_CONSTANT.
From-SVN: r194317
Aldy Hernandez [Sat, 8 Dec 2012 01:19:13 +0000 (01:19 +0000)]
re PR c++/55513 (Incorrect snprintf folding when building with -std=c++0x)
PR c++/55513
* semantics.c (cxx_eval_builtin_function_call): Set non_constant_p
after folding.
From-SVN: r194316
GCC Administrator [Sat, 8 Dec 2012 00:20:49 +0000 (00:20 +0000)]
Daily bump.
From-SVN: r194315
Paolo Carlini [Fri, 7 Dec 2012 23:17:14 +0000 (23:17 +0000)]
tree.c (build_aggr_init_expr): Remove tsubst_flags_t parameter.
2012-12-07 Paolo Carlini <paolo.carlini@oracle.com>
* tree.c (build_aggr_init_expr): Remove tsubst_flags_t parameter.
(build_cplus_new): Adjust.
* cp-tree.h: Adjust declaration.
* init.c (build_value_init): Adjust.
From-SVN: r194312
Sriraman Tallam [Fri, 7 Dec 2012 22:46:35 +0000 (22:46 +0000)]
toplev.c (process_options): Do not warn when -ffunction-sections and -fprofile are used together.
2012-12-07 Sriraman Tallan <tmsriram@google.com>
* toplev.c (process_options): Do not warn when -ffunction-sections
and -fprofile are used together.
From-SVN: r194311
Steven Bosscher [Fri, 7 Dec 2012 22:29:01 +0000 (22:29 +0000)]
* ree.c (struct ext_cand): Remove GTY markers.
From-SVN: r194310
Mike Stump [Fri, 7 Dec 2012 21:26:20 +0000 (21:26 +0000)]
discr38.adb: Don't use ^M line endings.
2012-12-07 Mike Stump <mikestump@comcast.net>
* gnat.dg/discr38.adb: Don't use ^M line endings.
gnat.dg/loop_optimization13.adb: Likewise.
gnat.dg/loop_optimization13.ads: Likewise.
gnat.dg/discr36_pkg.adb: Likewise.
gnat.dg/discr36_pkg.ads: Likewise.
gnat.dg/loop_optimization11_pkg.ads: Likewise.
gnat.dg/discr36.ads: Likewise.
gnat.dg/loop_optimization11.adb: Likewise.
From-SVN: r194309
Vladimir Makarov [Fri, 7 Dec 2012 21:06:38 +0000 (21:06 +0000)]
re PR rtl-optimization/55141 (wrong code with -fno-split-wide-types)
2012-12-07 Vladimir Makarov <vmakarov@redhat.com>
testsuite/gcc.target/i386/pr55141.c
* lra-constraints.c (lra_constraints): Use biggest mode for
df_set_regs_ever_live.
2012-12-07 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/55141
* gcc.target/i386/pr55141.c: New.
From-SVN: r194308
Dodji Seketeli [Fri, 7 Dec 2012 17:05:19 +0000 (17:05 +0000)]
PR c++/54401 - Confusing diagnostics about type-alias at class scope
Consider this invalid example given in the PR, where T is not defined:
1 template<typename>
2 struct X {
3 using type = T;
4 };
g++ yields the confusing diagnostics:
test.cc:3:10: error: expected nested-name-specifier before 'type'
using type = T;
^
test.cc:3:10: error: using-declaration for non-member at class scope
test.cc:3:15: error: expected ';' before '=' token
using type = T;
^
test.cc:3:15: error: expected unqualified-id before '=' token
I think this is because in cp_parser_member_declaration we tentatively
parse an alias declaration; we then have a somewhat meaningful
diagnostic which alas is not emitted because we are parsing
tentatively. As the parsing didn't succeed (because the input is
invalid) we try to parse a using declaration, which fails as well; but
then the diagnostic emitted is the one for the failed attempt at
parsing a using declaration, not an alias declaration. Oops.
The idea of this patch is to commit the tentative parse when we see
the '=' token in the alias-declaration. That way any error encounter
after that token is reported to the user.
We are now getting the following output:
test.cc:3:18: erreur: expected type-specifier before ‘T’
using type = T;
^
test.cc:3:18: erreur: ‘T’ does not name a type
I don't really like the "before 'T'" there, but I think we maybe could
revisit the format of what cp_parser_error emits in general, now that
we have caret diagnostics; We could maybe do away with the "before T"
altogether?
In the mean time, it seems to me that this patch brings an improvement
over what we already have in trunk, and the issue above could be
addressed separately.
Tested on x86_64-unknown-linux-gnu against trunk.
gcc/cp/
* parser.c (cp_parser_alias_declaration): Commit to tentative
parse when see the '=' token. Get out if the type-id is invalid.
Update function comment.
(cp_parser_member_declaration): Don't try to parse a using
declaration if we know that we expected an alias declaration; that
is, if we see the '=' token after the identifier.
gcc/testsuite/
* g++.dg/cpp0x/alias-decl-28.C: New test.
* g++.dg/cpp0x/alias-decl-16.C: Update.
From-SVN: r194306
Jan Hubicka [Fri, 7 Dec 2012 17:02:20 +0000 (18:02 +0100)]
tree-ssa-loop-ivcanon.c (tree_estimate_loop_size): Add UPPER_BOUND parameter.
* tree-ssa-loop-ivcanon.c (tree_estimate_loop_size): Add UPPER_BOUND
parameter.
(try_unroll_loop_completely) Update.
From-SVN: r194305
Jakub Jelinek [Fri, 7 Dec 2012 16:04:26 +0000 (17:04 +0100)]
re PR fortran/55395 (libgfortran bootstrap failure on powerpc-linux-gnu and arm-linux-gnueabi)
PR fortran/55395
* varpool.c (varpool_remove_node): Don't drop DECL_INITIAL
for -g for any kind of debug info.
From-SVN: r194304
Jakub Jelinek [Fri, 7 Dec 2012 14:14:25 +0000 (15:14 +0100)]
re PR bootstrap/54926 (Bootstrap comparison failure for various files in libbacktrace)
PR bootstrap/54926
* Makefile.am (AM_CFLAGS): Add -frandom-seed=$@.
* Makefile.in: Regenerated.
From-SVN: r194303
Richard Biener [Fri, 7 Dec 2012 13:16:28 +0000 (13:16 +0000)]
re PR tree-optimization/54886 (FAIL: gcc.dg/graphite/pr(42521|42771).c (internal compiler error) due to revision 192219)
2012-12-07 Richard Biener <rguenther@suse.de>
PR tree-optimization/54886
* graphite-sese-to-poly.c (build_loop_iteration_domains): Properly
free all memory.
From-SVN: r194302
Martin Jambor [Fri, 7 Dec 2012 13:05:52 +0000 (14:05 +0100)]
re PR middle-end/55078 (FAIL: g++.dg/torture/pr46154.C)
2012-12-07 Martin Jambor <mjambor@suse.cz>
PR middle-end/55078
* ipa-inline-transform.c (inline_call): Turn #if 0 to #ifdef
ENABLE_CHECKING.
* ipa-prop.c (try_make_edge_direct_simple_call): Use
ipa_value_from_jfunc.
(try_make_edge_direct_virtual_call): Likewise.
(update_indirect_edges_after_inlining): Lookup new_root_info and pass
it to the functions above.
From-SVN: r194301
Martin Jambor [Fri, 7 Dec 2012 12:50:43 +0000 (13:50 +0100)]
re PR tree-optimization/55590 (SRA still produces unnecessarily unaligned memory accesses)
2012-12-07 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/55590
* tree-sra.c (build_ref_for_offset): Use get_object_alignment_1 to
get base alignment.
* testsuite/gcc.target/i386/pr55590-1.c: New test.
* testsuite/gcc.target/i386/pr55590-2.c: Likewise.
From-SVN: r194300
Uros Bizjak [Fri, 7 Dec 2012 11:02:37 +0000 (12:02 +0100)]
* config/i386/i386.c (legitimize_tls_address): Reorganize a tiny bit.
From-SVN: r194299
Paolo Carlini [Fri, 7 Dec 2012 09:53:04 +0000 (09:53 +0000)]
re PR c++/54975 (cv-qualifiers of typedef-name are ignored in lambda expression)
2012-12-07 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/54975
* g++.dg/cpp0x/lambda/lambda-typedef.C: New.
From-SVN: r194297
Jason Merrill [Fri, 7 Dec 2012 04:54:27 +0000 (23:54 -0500)]
re PR c++/54325 (C++11 uniform initialization syntax for argument-less abstract base class constructor fails)
PR c++/54325
* tree.c (build_aggr_init_expr): Don't check for abstract class.
From-SVN: r194284
Jason Merrill [Fri, 7 Dec 2012 04:54:12 +0000 (23:54 -0500)]
add PR 55245 marker
From-SVN: r194283
Jason Merrill [Fri, 7 Dec 2012 04:53:59 +0000 (23:53 -0500)]
re PR c++/55058 (Unexpected invalid type conversion error)
PR c++/55058
* pt.c (tsubst): Keep the quals when looking through a typedef.
From-SVN: r194282
Jason Merrill [Fri, 7 Dec 2012 04:53:46 +0000 (23:53 -0500)]
re PR c++/55249 (Multiple copy constructors for template class lead to link errors)
PR c++/55249
* tree.c (build_vec_init_elt): Use the type of the initializer.
From-SVN: r194281
GCC Administrator [Fri, 7 Dec 2012 00:18:45 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r194278
Uros Bizjak [Thu, 6 Dec 2012 22:05:21 +0000 (23:05 +0100)]
re PR middle-end/55597 (internal compiler error: in plus_constant, at explow.c:88)
PR target/55597
* config/i386/i386.c (legitimize_tls_address): Zero-extend x to Pmode,
before using it as insn or call equivalent.
testsuite/ChangeLog:
PR target/55597
* gcc.target/i386/pr55597.c: New test.
From-SVN: r194274
Peter Bergner [Thu, 6 Dec 2012 21:53:36 +0000 (15:53 -0600)]
configure.tgt: Enable build on powerpc*-linux.
libsanitizer/
* configure.tgt: Enable build on powerpc*-linux.
gcc/
* config/rs6000/sysv4.h (TARGET_ASAN_SHADOW_OFFSET): Define.
* config/rs6000/rs6000.c (rs6000_asan_shadow_offset): New function.
* config/rs6000/rs6000.h (FRAME_GROWS_DOWNWARD): Disable if using ASAN.
From-SVN: r194273
Jakub Jelinek [Thu, 6 Dec 2012 20:34:55 +0000 (21:34 +0100)]
re PR fortran/55395 (libgfortran bootstrap failure on powerpc-linux-gnu and arm-linux-gnueabi)
PR fortran/55395
* varpool.c (varpool_remove_node): Don't drop DECL_INITIAL
if -g and emitting DWARF2+.
From-SVN: r194272
Pat Haugen [Thu, 6 Dec 2012 20:32:37 +0000 (20:32 +0000)]
rs6000.c (rs6000_option_override_internal): Set default loop peeling limits.
* config/rs6000/rs6000.c (rs6000_option_override_internal): Set
default loop peeling limits.
From-SVN: r194271
Jason Merrill [Thu, 6 Dec 2012 20:21:08 +0000 (15:21 -0500)]
re PR c++/54744 (internal compiler error: Segmentation fault, by dependent base, member typedef and ctor-initializer)
PR c++/54744
* pt.c (resolve_typename_type): Check TYPENAME_IS_RESOLVING_P on scope.
* init.c (expand_member_init): Check for being in a template first.
* parser.c (cp_parser_mem_initializer_list): Only check class types
for equivalence to the current class.
From-SVN: r194267
Jason Merrill [Thu, 6 Dec 2012 20:20:52 +0000 (15:20 -0500)]
re PR c++/54913 (qualified lookup in ctor of class template fails to find static member of reference type)
PR c++/54913
* semantics.c (finish_qualified_id_expr): convert_from_reference
after building a SCOPE_REF.
From-SVN: r194266
Jason Merrill [Thu, 6 Dec 2012 20:20:34 +0000 (15:20 -0500)]
re PR c++/55032 (Internal compiler error: in strip_typedefs, at cp/tree.c:1199)
PR c++/55032
* tree.c (build_array_type_1): Re-layout if we found it in the
hash table.
From-SVN: r194265
Jakub Jelinek [Thu, 6 Dec 2012 18:55:48 +0000 (19:55 +0100)]
re PR c++/54207 ([C++0x] ICE in build_noexcept_spec when bool is #defined/typedef'd)
PR c++/54207
* except.c (build_noexcept_spec): Avoid direct comparison
with boolean_true_node or boolean_false_node, instead use
operand_equal_p and/or INTEGER_CST check.
* pt.c (tsubst_exception_specification): Likewise.
* typeck2.c (merge_exception_specifiers): Likewise.
* g++.dg/cpp0x/noexcept18.C: New test.
From-SVN: r194263
Jakub Jelinek [Thu, 6 Dec 2012 18:54:25 +0000 (19:54 +0100)]
re PR c++/55573 (ICE in adjust_temp_type, at cp/semantics.c:6454)
PR c++/55573
* semantics.c (adjust_temp_type): Handle VECTOR_CST.
* g++.dg/cpp0x/constexpr-55573.C: New test.
From-SVN: r194262
Jack Howarth [Thu, 6 Dec 2012 14:49:44 +0000 (14:49 +0000)]
Fix PR55599/sanitizer by disabling static libasan on darwin
From-SVN: r194257
Jason Merrill [Thu, 6 Dec 2012 14:45:11 +0000 (09:45 -0500)]
re PR c++/54947 ([C++11] lambda cannot capture-by-copy inside braced-init-list)
PR c++/54947
* parser.c (cp_parser_initializer_list): Don't require an
expression in [] to be constant until we know it's a C99
designator.
From-SVN: r194256
Kostya Serebryany [Thu, 6 Dec 2012 14:43:11 +0000 (14:43 +0000)]
[libsanitizer] merge from upstream r169392
From-SVN: r194255
Jakub Jelinek [Thu, 6 Dec 2012 14:37:59 +0000 (15:37 +0100)]
re PR middle-end/43631 (var-tracking inserts notes with non-NULL BLOCK_FOR_INSN in between basic blocks)
PR middle-end/43631
* var-tracking.c (emit_note_insn_var_location, emit_notes_in_bb):
Clear BLOCK_FOR_INSN on notes emitted in between basic blocks,
don't adjust BB_END when inserting note after BB_END of some bb.
From-SVN: r194252
Jason Merrill [Thu, 6 Dec 2012 14:37:13 +0000 (09:37 -0500)]
re PR c++/55015 (Lambda functions not found at link time when declared in an inline function)
PR c++/55015
PR c++/53821
* semantics.c (maybe_add_lambda_conv_op): Revert earlier change.
* decl.c (start_preparsed_function): Make local class methods comdat
in templates, too.
From-SVN: r194251
Jakub Jelinek [Thu, 6 Dec 2012 14:37:09 +0000 (15:37 +0100)]
re PR c++/55137 (Unexpected static structure initialization)
PR c++/55137
* fold-const.c (fold_binary_loc) <associate>: Don't introduce
TREE_OVERFLOW through reassociation. If type doesn't have defined
overflow, but one or both of the operands do, use the wrapping type
for reassociation and only convert to type at the end.
* g++.dg/opt/pr55137.C: New test.
* gcc.c-torture/execute/pr55137.c: New test.
From-SVN: r194250
Jason Merrill [Thu, 6 Dec 2012 14:37:04 +0000 (09:37 -0500)]
re PR c++/54653 (tsubst_template_parms ICE)
PR c++/54653
* parser.c (cp_parser_class_head): A partial specialization scope
counts as a template.
* pt.c (tsubst_template_parms): Handle template template parm parms.
(tsubst_decl) [TEMPLATE_DECL]: Handle getting a template template
argument back.
From-SVN: r194249
Jason Merrill [Thu, 6 Dec 2012 14:36:55 +0000 (09:36 -0500)]
re PR c++/55564 (internal error using decltype of a template type parameter for late-specified function result type)
PR c++/55564
* pt.c (unify) [ARRAY_TYPE]: Unify the element type before the bounds.
From-SVN: r194248
Richard Biener [Thu, 6 Dec 2012 11:00:23 +0000 (11:00 +0000)]
gimple-fold.c (fold_stmt_1): Remove code handling folding stmts away.
2012-12-06 Richard Biener <rguenther@suse.de>
* gimple-fold.c (fold_stmt_1): Remove code handling folding
stmts away.
From-SVN: r194247
Kyrylo Tkachov [Thu, 6 Dec 2012 10:07:41 +0000 (10:07 +0000)]
sourcebuild.texi: Document arm_v8_neon_ok.
2012-12-06 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
gcc/
* doc/sourcebuild.texi: Document arm_v8_neon_ok.
gcc/testsuite/
* lib/target-supports.exp (check_effective_target_arm_v8_neon_ok):
New procedure.
(add_options_for_arm_v8_neon): Likewise.
From-SVN: r194245
Kyrylo Tkachov [Thu, 6 Dec 2012 09:55:45 +0000 (09:55 +0000)]
arm.c (neon_itype): Define NEON_RINT enum element.
2012-12-06 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/arm.c (neon_itype): Define NEON_RINT enum element.
(neon_builtin_data): Register vrintn, vrinta, vrintp, vrintm,
vrintz, vrintx neon builtins.
(arm_init_neon_builtins): Handle NEON_RINT.
(arm_expand_neon_builtin): Likewise.
* config/arm/unspecs.md: New file.
* config/arm/arm.md ("unspec"): Move to unspecs.md.
* config/arm/iterators.md (NEON_VRINT): New int iterator.
(nvrint_variant): New int attribute.
* config/arm/neon.md
(neon_vrint<NEON_VRINT:nvrint_variant><VCVTF:mode>): New pattern.
("unspec"): Move to unspecs.md.
* config/arm/iwmmxt2.md ("unspec"): Move to unspecs.md.
From-SVN: r194244
Uros Bizjak [Thu, 6 Dec 2012 09:49:43 +0000 (10:49 +0100)]
sfp-machine.h (FP_EX_ALL): Define.
* config/i386/sfp-machine.h (FP_EX_ALL): Define.
(FP_TRAPPING_EXCEPTIONS): Define.
* config/i386/32/sfp-machine.h (FP_EX_SHIFT): Define.
* config/i386/64/sfp-machine.h (FP_EX_SHIFT): Ditto.
From-SVN: r194243
Ian Lance Taylor [Thu, 6 Dec 2012 04:11:54 +0000 (04:11 +0000)]
compiler: Correct test for whether go/defer arg is parenthesized.
From-SVN: r194240
Ian Lance Taylor [Thu, 6 Dec 2012 02:00:13 +0000 (02:00 +0000)]
os: Clean up directory reading code.
From-SVN: r194237
John David Anglin [Thu, 6 Dec 2012 01:38:00 +0000 (01:38 +0000)]
pa.md: Use "const_int 0" instead of match_test to simplify opaque cond in all call insns.
* config/pa/pa.md: Use "const_int 0" instead of match_test to simplify
opaque cond in all call insns.
From-SVN: r194235
GCC Administrator [Thu, 6 Dec 2012 00:18:38 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r194234
Steven Bosscher [Wed, 5 Dec 2012 23:57:17 +0000 (23:57 +0000)]
* g++.dg/pr55604.C: New test.
From-SVN: r194231
Steven Bosscher [Wed, 5 Dec 2012 23:55:28 +0000 (23:55 +0000)]
re PR rtl-optimization/55604 (ICE while dumping in remove_some_program_points_and_update_live_ranges)
PR rtl-optimization/55604
* lra-lives.c (lra_create_live_ranges): If there are no referenced
pseudos left, do not compute live ranges.
From-SVN: r194230
Steven Bosscher [Wed, 5 Dec 2012 23:16:52 +0000 (23:16 +0000)]
tm.texi.in (TARGET_CLASS_LIKELY_SPILLED_P): Update documentation.
* doc/tm.texi.in (TARGET_CLASS_LIKELY_SPILLED_P): Update documentation.
* doc/tm.texi: Regenerate.
* regs.h (REG_LIVE_LENGTH): Update comments to not refer to no longer
existing files global.c and local-alloc.c.
* regmove.c (copy_src_to_dest): Likewise.
* function.h (struct rtl_data): Likewise.
* ira-color.c (allocno_priority_compare_func): Likewise.
* regstat.c (regstat_compute_ri): Likewise.
* config/epiphany/epiphany.h, config/vax/vax.h, config/cris/cris.h,
config/h8300/h8300.h, config/alpha/alpha.h, config/sparc/sparc.h,
config/rs6000/rs6000.h, config/pdp11/pdp11.h, config/pa/pa.h,
config/v850/v850.h, config/mn10300/mn10300.h, config/m32r/m32r.h,
config/i386/i386.h, config/mcore/mcore.h, config/sh/sh.h,
config/arm/arm.h (REGNO_OK_FOR_BASE_P): Likewise.
From-SVN: r194229
Aldy Hernandez [Wed, 5 Dec 2012 21:10:18 +0000 (21:10 +0000)]
re PR target/54160 (gcc should not define __OBJC2__ when lang is not set to ObjC (gcc 4.6 and later))
PR target/54160
* config/t-darwin (darwin-c.o): Depend on $(CPP_INTERNAL_H).
* config/darwin-c.c (darwin_cpp_builtins): Only set __OBJC2__
when in obj mode.
Include libcpp/internal.h.
From-SVN: r194227
Michael Eager [Wed, 5 Dec 2012 17:27:05 +0000 (17:27 +0000)]
re PR rtl-optimization/54739 (FAIL: gcc.dg/lower-subreg-1.c scan-rtl-dump subreg1 "Splitting reg")
PR rtl-optimization/54739
* config/microblaze/microblaze.md: (anddi3, iordi3, xordi3): Delete patterns.
From-SVN: r194226
Tobias Burnus [Wed, 5 Dec 2012 15:45:32 +0000 (16:45 +0100)]
resolve.c (generate_component_assignments): Fix memleak.
2012-12-05 Tobias Burnus <burnus@net-b.de>
* resolve.c (generate_component_assignments): Fix memleak.
From-SVN: r194225
Kostya Serebryany [Wed, 5 Dec 2012 13:19:55 +0000 (13:19 +0000)]
[libsanitizer] merge from upstream r169371
From-SVN: r194221
James Greenhalgh [Wed, 5 Dec 2012 11:42:37 +0000 (11:42 +0000)]
[AARCH64] Add zip{1, 2}, uzp{1, 2}, trn{1, 2} support
for vector permute.
gcc/
* config/aarch64/aarch64-simd-builtins.def: Add new builtins.
* config/aarch64/aarch64-simd.md (simd_type): Add uzp.
(aarch64_<PERMUTE:perm_insn><PERMUTE:perm_hilo><mode>): New.
* config/aarch64/aarch64.c (aarch64_evpc_trn): New.
(aarch64_evpc_uzp): Likewise.
(aarch64_evpc_zip): Likewise.
(aarch64_expand_vec_perm_const_1): Check for trn, zip, uzp patterns.
* config/aarch64/iterators.md (unspec): Add neccessary unspecs.
(PERMUTE): New.
(perm_insn): Likewise.
(perm_hilo): Likewise.
From-SVN: r194219
James Greenhalgh [Wed, 5 Dec 2012 11:36:00 +0000 (11:36 +0000)]
[AARCH64] Implement Vector Permute Support.
gcc/
* config/aarch64/aarch64-protos.h
(aarch64_split_combinev16qi): New.
(aarch64_expand_vec_perm): Likewise.
(aarch64_expand_vec_perm_const): Likewise.
* config/aarch64/aarch64-simd.md (vec_perm_const<mode>): New.
(vec_perm<mode>): Likewise.
(aarch64_tbl1<mode>): Likewise.
(aarch64_tbl2v16qi): Likewise.
(aarch64_combinev16qi): New.
* config/aarch64/aarch64.c
(aarch64_vectorize_vec_perm_const_ok): New.
(aarch64_split_combinev16qi): Likewise.
(MAX_VECT_LEN): Define.
(expand_vec_perm_d): New.
(aarch64_expand_vec_perm_1): Likewise.
(aarch64_expand_vec_perm): Likewise.
(aarch64_evpc_tbl): Likewise.
(aarch64_expand_vec_perm_const_1): Likewise.
(aarch64_expand_vec_perm_const): Likewise.
(aarch64_vectorize_vec_perm_const_ok): Likewise.
(TARGET_VECTORIZE_VEC_PERM_CONST_OK): Likewise.
* config/aarch64/iterators.md
(unspec): Add UNSPEC_TBL, UNSPEC_CONCAT.
(V_cmp_result): Add mapping for V2DF.
gcc/testsuite/
* lib/target-supports.exp
(check_effective_target_vect_perm): Allow aarch64*-*-*.
(check_effective_target_vect_perm_byte): Likewise.
(check_effective_target_vect_perm_short): Likewise.
(check_effective_target_vect_char_mult): Likewise.
(check_effective_target_vect_extract_even_odd): Likewise.
(check_effective_target_vect_interleave): Likewise.
From-SVN: r194218
Arnaud Charlet [Wed, 5 Dec 2012 11:25:23 +0000 (12:25 +0100)]
[multiple changes]
2012-12-05 Robert Dewar <dewar@adacore.com>
* par_sco.adb, sem_prag.adb, put_scos.adb, get_scos.adb: Minor
reformatting.
2012-12-05 Ed Schonberg <schonberg@adacore.com>
* sem_ch3.adb: Code clean up.
From-SVN: r194217
Arnaud Charlet [Wed, 5 Dec 2012 11:24:07 +0000 (11:24 +0000)]
Make-lang.in: Update dependencies.
* gcc-interface/Make-lang.in: Update dependencies.
* gcc-interface/lang.opt: New language AdaSCIL.
* gcc-interface/lang-specs.h: Add specs for adascil language.
From-SVN: r194216
Arnaud Charlet [Wed, 5 Dec 2012 11:21:32 +0000 (12:21 +0100)]
[multiple changes]
2012-12-05 Thomas Quinot <quinot@adacore.com>
* par_sco.adb (Traverse_Aspects): Ensure we always have
an entry in the sloc -> SCO map for invariants, since
Set_SCO_Pragma_Enabled is called with that sloc when checks
are enabled.
2012-12-05 Thomas Quinot <quinot@adacore.com>
* exp_ch4.adb: Minor reformatting.
2012-12-05 Hristian Kirtchev <kirtchev@adacore.com>
* par-prag.adb: Checks and processing of pragma Assume are
carried out by Sem_Prag.
* sem_prag.adb (Analyze_Pragma): Check the legality of pragma
Assume.
* snames.ads-tmpl: Add new name Assume. Add a pragma identifier
for Assume.
From-SVN: r194215
Ed Schonberg [Wed, 5 Dec 2012 11:20:13 +0000 (11:20 +0000)]
aspects.ads, [...]: Add aspect Relative_Deadline.
2012-12-05 Ed Schonberg <schonberg@adacore.com>
* aspects.ads, aspects.adb: Add aspect Relative_Deadline.
* sem_ch13.adb (Analyze_Aspect_Specifications): Process aspect
Relative_Deadline, and introduce the corresponding pragma within
the task definition of the task type to which it applies.
(Check_Aspect_At_Freeze_Point): Expression in a Relative_Deadline
aspect is of type Time_Span.
From-SVN: r194214
Arnaud Charlet [Wed, 5 Dec 2012 11:17:09 +0000 (12:17 +0100)]
[multiple changes]
2012-12-05 Hristian Kirtchev <kirtchev@adacore.com>
* sem_prag.adb (Check_Loop_Invariant_Variant_Placement): When pragma
Loop_[In]variant does not appear immediately within the statements
of a loop, it must appear in a chain of nested blocks.
2012-12-05 Thomas Quinot <quinot@adacore.com>
* sem_ch13.adb: Minor reformatting.
Remove redundant assertion.
From-SVN: r194213
Arnaud Charlet [Wed, 5 Dec 2012 11:16:09 +0000 (12:16 +0100)]
Minor reformatting.
From-SVN: r194212