GCC Administrator [Sun, 28 Jul 2013 00:16:47 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r201290
Joern Rennecke [Sat, 27 Jul 2013 18:41:49 +0000 (18:41 +0000)]
epiphany.c (epiphany_compute_frame_size): Also reserve space for saving UNKNOWN_REGNUM for leaf functions.
* config/epiphany/epiphany.c (epiphany_compute_frame_size):
Also reserve space for saving UNKNOWN_REGNUM for leaf functions.
From-SVN: r201287
Tobias Burnus [Sat, 27 Jul 2013 14:17:01 +0000 (16:17 +0200)]
re PR fortran/57991 (Enhance "Same actual argument associated" warning (-Waliasing))
2013-07-27 Tobias Burnus <burnus@net-b.de>
PR fortran/57991
* interface.c (check_some_aliasing): Also warn for intent
* OUT/OUT.
2013-07-27 Tobias Burnus <burnus@net-b.de>
PR fortran/57991
* gfortran.dg/warn_alias.f90: New.
From-SVN: r201286
Janus Weil [Sat, 27 Jul 2013 12:55:59 +0000 (14:55 +0200)]
re PR fortran/57285 ([OOP] ICE on invalid: "gfc_array_dimen_size(): Bad dimension" due to SIZE intrinsic with invalid dim on CLASS dummy)
2013-07-27 Janus Weil <janus@gcc.gnu.org>
PR fortran/57285
* check.c (dim_rank_check): Re-enable this check for CLASS arrays.
2013-07-27 Janus Weil <janus@gcc.gnu.org>
PR fortran/57285
* gfortran.dg/class_array_19.f90: New.
From-SVN: r201284
Eric Botcazou [Sat, 27 Jul 2013 06:38:12 +0000 (06:38 +0000)]
pr57705.c: Adjust for a !vect_pack_trunc target.
* gcc.dg/vect/pr57705.c: Adjust for a !vect_pack_trunc target.
* gcc.dg/vect/pr57741-2.c: Require a vect_float target.
* gcc.dg/vect/pr57741-3.c: Likewise.
* gcc.dg/vect/bb-slp-32.c: XFAIL for a vect_no_align target.
From-SVN: r201282
GCC Administrator [Sat, 27 Jul 2013 00:16:44 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r201279
Cary Coutant [Fri, 26 Jul 2013 20:14:43 +0000 (20:14 +0000)]
dwarf2out.c (die_checksum_ordered): Don't include template instantiations in signature.
gcc/
* dwarf2out.c (die_checksum_ordered): Don't include template
instantiations in signature.
(is_template_parameter): New function.
(is_template_instantiation): New function.
(generate_skeleton_bottom_up): Don't include template instantiations
in type unit DIE.
(generate_skeleton): Likewise.
(break_out_comdat_types): Move recursive call to break out nested
types earlier.
(prune_unused_types_mark_generic_parms_dies): Call
is_template_parameter.
From-SVN: r201275
William Schmidt [Fri, 26 Jul 2013 19:38:14 +0000 (19:38 +0000)]
Correct ChangeLog entry
From-SVN: r201274
Joern Rennecke [Fri, 26 Jul 2013 18:35:29 +0000 (18:35 +0000)]
pr37868.c: Disable for epiphany.
* gcc.dg/torture/pr37868.c: Disable for epiphany.
* gcc.dg/sibcall-6.c: Enable for epiphany.
From-SVN: r201272
Joern Rennecke [Fri, 26 Jul 2013 18:28:27 +0000 (18:28 +0000)]
pr27095.c: For Epiphany, add -mshort-calls.
* gcc.dg/pr27095.c: For Epiphany, add -mshort-calls.
* gcc.dg/tree-ssa/loop-1.c: Likewise.
From-SVN: r201271
Joern Rennecke [Fri, 26 Jul 2013 18:16:23 +0000 (18:16 +0000)]
* gcc.c-torture/execute/builtins/stpcpy-chk.x: New file.
From-SVN: r201270
Joern Rennecke [Fri, 26 Jul 2013 15:22:43 +0000 (15:22 +0000)]
Skip tests that make assumptions about struct layout that don't hold on epiphany.
Skip tests that make assumptions about struct layout that don't hold
on epiphany. These tests could be fixed by adding padded attributes,
See:
http://gcc.gnu.org/ml/gcc-patches/2011-08/msg00006.html
http://gcc.gnu.org/ml/gcc-patches/2011-09/msg01513.html
http://gcc.gnu.org/ml/gcc-patches/2011-09/msg01504.html
* g++.dg/cpp0x/cast.C: Skip for epiphany-*-*.
* g++.dg/cpp0x/iop.C: Likewise.
* g++.dg/cpp0x/named_refs.C: Likewise.
* g++.dg/cpp0x/rv1p.C: Likewise.
* g++.dg/cpp0x/rv2p.C: Likewise.
* g++.dg/cpp0x/rv3p.C: Likewise.
* g++.dg/cpp0x/rv4p.C: Likewise.
* g++.dg/cpp0x/rv5p.C: Likewise.
* g++.dg/cpp0x/rv6p.C: Likewise.
* g++.dg/cpp0x/rv7p.C: Likewise.
* g++.dg/cpp0x/rv8p.C: Likewise.
* g++.dg/ext/strncpy-chk1.C: Likewise.
* gcc.dg/builtin-object-size-10.c: Likewise.
* gcc.dg/builtin-object-size-11.c: Likewise.
* gcc.dg/builtin-stringop-chk-1.c: Likewise.
* gcc.dg/pr25805.c: Likewise.
* gcc.c-torture/execute/builtins/memcpy-chk.x: New file.
* gcc.c-torture/execute/builtins/memmove-chk.x: Likewise.
* gcc.c-torture/execute/builtins/mempcpy-chk.x: Likewise.
* gcc.c-torture/execute/builtins/memset-chk.x: Likewise.
* gcc.c-torture/execute/builtins/snprintf-chk.x: Likewise.
* gcc.c-torture/execute/builtins/sprintf-chk.x: Likewise.
* gcc.c-torture/execute/builtins/stpcpy-chk.x: Likewise.
* gcc.c-torture/execute/builtins/strcat-chk.x: Likewise.
* gcc.c-torture/execute/builtins/strcpy-chk.x: Likewise.
* gcc.c-torture/execute/builtins/strncat-chk.x: Likewise.
* gcc.c-torture/execute/builtins/strncpy-chk.x: Likewise.
* gcc.c-torture/execute/builtins/vsnprintf-chk.x: Likewise.
* gcc.c-torture/execute/builtins/vsprintf-chk.x: Likewise.
* gcc.c-torture/execute/zerolen-2.x: Likewise.
From-SVN: r201268
Kyrylo Tkachov [Fri, 26 Jul 2013 14:54:06 +0000 (14:54 +0000)]
minmax_minus.c: Scan
gcc/testsuite/
* gcc.target/arm/minmax_minus.c: Scan
From-SVN: r201267
David Edelsohn [Fri, 26 Jul 2013 11:50:39 +0000 (11:50 +0000)]
* gcc.dg/guality/guality.exp: Skip on AIX.
From-SVN: r201266
David Edelsohn [Fri, 26 Jul 2013 11:49:12 +0000 (11:49 +0000)]
ppc-vector-memcpy.c: Test use of VMX for memcpy not initializers.
* gcc.target/powerpc/ppc-vector-memcpy.c: Test use of VMX for memcpy
not initializers.
From-SVN: r201265
Ian Bolton [Fri, 26 Jul 2013 10:54:59 +0000 (10:54 +0000)]
AArch64 support for NEG in vector registers for DI and SI mode (part 2)
From-SVN: r201263
Paolo Carlini [Fri, 26 Jul 2013 10:38:40 +0000 (10:38 +0000)]
re PR c++/57101 (-fcompare-debug failure with <type error>)
2013-07-26 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57101
* g++.dg/cpp0x/pr57101.C: New.
From-SVN: r201262
Ian Bolton [Fri, 26 Jul 2013 10:30:20 +0000 (10:30 +0000)]
AArch64 support for NEG in vector registers for DI and SI mode
From-SVN: r201261
Kyrylo Tkachov [Fri, 26 Jul 2013 08:22:25 +0000 (08:22 +0000)]
combine.c (simplify_comparison): Re-canonicalize operands where appropriate.
2013-07-26 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
Richard Earnshaw <richard.earnshaw@arm.com>
* combine.c (simplify_comparison): Re-canonicalize operands
where appropriate.
* config/arm/arm.md (movcond_addsi): New splitter.
Co-Authored-By: Richard Earnshaw <rearnsha@arm.com>
From-SVN: r201260
GCC Administrator [Fri, 26 Jul 2013 00:16:36 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r201259
Sterling Augustine [Thu, 25 Jul 2013 22:18:21 +0000 (22:18 +0000)]
dwarf2out.c (size_of_pubnames): Move code to...
2013-07-25 Sterling Augustine <saugustine@google.com>
* dwarf2out.c (size_of_pubnames): Move code to...
(include_pubname_in_output): ...here. New.
(want_pubnames): Rearrange.
(output_pubnames): Call include_pubname_in_output. Move assertion.
From-SVN: r201255
Janus Weil [Thu, 25 Jul 2013 21:41:22 +0000 (23:41 +0200)]
re PR fortran/57966 ([OOP] Using a TBP to specify the shape of a dummy argument)
2013-07-25 Janus Weil <janus@gcc.gnu.org>
PR fortran/57966
* resolve.c (resolve_typebound_function): Make sure the declared type,
including its type-bound procedures, is resolved before resolving the
actual type-bound call.
2013-07-25 Janus Weil <janus@gcc.gnu.org>
PR fortran/57966
* gfortran.dg/typebound_call_25.f90: New.
From-SVN: r201254
Paolo Carlini [Thu, 25 Jul 2013 21:24:07 +0000 (21:24 +0000)]
complex (pow(const complex<>&, int)): Enable in C++11 mode too.
2013-07-25 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/complex (pow(const complex<>&, int)): Enable in
C++11 mode too.
* testsuite/26_numerics/complex/dr844.cc: Adjust.
* doc/xml/manual/intro.xml: Update.
From-SVN: r201253
Cameron McInally [Thu, 25 Jul 2013 20:47:16 +0000 (22:47 +0200)]
re PR target/38836 (Documentation for x86 builtins is outdated)
2013-07-25 Cameron McInally <cameron.mcinally@nyu.edu>
* doc/extend.texi: Fix return types for __builtin_ia32_cmp*s builtins.
2013-07-25 Cameron McInally <cameron.mcinally@nyu.edu>
PR target/38836
* doc/extend.texi: Remove obsolete builtins. Fix
typo for __builtin_ia32_loadss and __builtin_ia32_cmpnltss.
From-SVN: r201252
Jan Hubicka [Thu, 25 Jul 2013 17:10:21 +0000 (19:10 +0200)]
cgraph.c (release_function_body): Break out from ...
* cgraph.c (release_function_body): Break out from ...
(cgraph_release_function_body): ... this one; also release DECL_RESULT
and DECL_ARGUMENTS.
* ipa-cp.c (get_replacement_map): Add parm_num argument; do not set
old_tree in the map.
(create_specialized_node): Update.
* lto-cgraph.c (output_node_opt_summary): Do not translate old_tree
into index.
* cgraphclones.c (cgraph_create_virtual_clone): Do not copy DECL_ARGUMENTS,
DECL_INITIAL and DECL_RESULT.
* ipa-prop.c (ipa_populate_param_decls): Look for origin of clones.
* tree-inline.c (initialize_cfun): Initialize DECL_ARGUMENTS and
DECL_RESULT.
From-SVN: r201251
Kyrylo Tkachov [Thu, 25 Jul 2013 16:33:27 +0000 (16:33 +0000)]
arm.md (arm_addsi3, [...]): Correct output template.
2013-07-25 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/arm.md (arm_addsi3, addsi3_carryin_<optab>,
addsi3_carryin_alt2_<optab>): Correct output template.
From-SVN: r201250
Kyrylo Tkachov [Thu, 25 Jul 2013 16:31:51 +0000 (16:31 +0000)]
arm-fixed.md (ssmulsa3, usmulusa3): Adjust for arm_restrict_it.
2013-07-25 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/arm-fixed.md (ssmulsa3, usmulusa3):
Adjust for arm_restrict_it.
Remove trailing whitespace.
From-SVN: r201249
Mark Kettenis [Thu, 25 Jul 2013 15:53:51 +0000 (15:53 +0000)]
pa.c (pa_trampoline_init): Emit __enable_execute_stack libcall if HAVE_ENABLE_EXECUTE_STACK is defined.
* config/pa/pa.c (pa_trampoline_init): Emit __enable_execute_stack
libcall if HAVE_ENABLE_EXECUTE_STACK is defined.
From-SVN: r201248
Mark Kettenis [Thu, 25 Jul 2013 15:26:31 +0000 (15:26 +0000)]
config.gcc (hppa-*-openbsd*): Don't set tmake_file.
* config.gcc (hppa-*-openbsd*): Don't set tmake_file.
From-SVN: r201247
Paolo Carlini [Thu, 25 Jul 2013 15:04:03 +0000 (15:04 +0000)]
re PR c++/57981 (ICE in this code)
/cp
2013-07-25 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57981
* decl.c (check_default_argument): Take a tsubst_flags_t parameter.
(grokparms): Adjust.
* parser.c (cp_parser_late_parse_one_default_arg): Likewise.
* pt.c (tsubst_default_argument, tsubst_default_arguments): Take
a tsubst_flags_t parameter.
(tsubst_decl): Adjust.
* call.c (convert_default_arg): Likewise.
* cp-tree.h (check_default_argument, tsubst_default_argument):
Update declarations.
/testsuite
2013-07-25 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57981
* g++.dg/cpp0x/pr57981.C: New.
/cp
2013-07-25 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57880
* parser.c (cp_parser_operator, case CPP_WSTRING, CPP_STRING16,
CPP_STRING32, CPP_UTF8STRING, CPP_WSTRING_USERDEF,
CPP_STRING16_USERDEF, CPP_STRING32_USERDEF, CPP_UTF8STRING_USERDEF):
Fix string_len management, tidy.
/testsuite
2013-07-25 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57880
* g++.dg/cpp1y/udlit-empty-string-neg.C: New.
From-SVN: r201245
Tim Shen [Thu, 25 Jul 2013 14:59:43 +0000 (14:59 +0000)]
Add documents and comments.
2013-07-25 Tim Shen <timshen91@gmail.com>
Add documents and comments.
* include/bits/regex.h: Documents and comments.
* include/bits/regex_grep_matcher.h: Likewise.
* include/bits/regex_grep_matcher.tcc: Likewise.
* testsuite/28_regex/iterators/regex_iterator/char/string_position_01.cc:
New.
From-SVN: r201244
Vladimir Makarov [Thu, 25 Jul 2013 14:58:21 +0000 (14:58 +0000)]
re PR rtl-optimization/57960 (S/390: LRA ICE building glibc)
2013-07-25 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/57960
* lra-constraints.c (process_alt_operands): Use the right mode
when checking strict_low.
2013-07-25 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/57960
* gcc.target/s390/pr57960.c: New.
From-SVN: r201243
Jan Hubicka [Thu, 25 Jul 2013 13:24:58 +0000 (15:24 +0200)]
lto-symtab.c (lto_cgraph_replace_node): Release function body.
* lto-symtab.c (lto_cgraph_replace_node): Release function body.
* cgraph.c (cgraph_remove_node): Do not release function body
when in cgraph streaming.
* ipa.c (process_references, symtab_remove_unreachable_nodes): Objects
in other partitions are not considered reachable; fix handling of clones.
From-SVN: r201242
Ramana Radhakrishnan [Thu, 25 Jul 2013 12:50:14 +0000 (12:50 +0000)]
Remove unnecessary space.
From-SVN: r201241
Ramana Radhakrishnan [Thu, 25 Jul 2013 09:40:11 +0000 (09:40 +0000)]
Fix PR target/57731 PR target/57837
2013-07-25 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR target/19599
PR target/57731
PR target/57837
* config/arm/arm.md ("*sibcall_value_insn): Replace use of
Ss with US. Adjust output for v5 and v4t.
(*sibcall_value_insn): Likewise and loosen predicate on
operand0.
* config/arm/constraints.md ("Ss"): Rename to US.
From-SVN: r201240
Janus Weil [Thu, 25 Jul 2013 08:26:36 +0000 (10:26 +0200)]
re PR fortran/57639 ([OOP] ICE with polymorphism (and illegal code))
2013-07-25 Janus Weil <janus@gcc.gnu.org>
PR fortran/57639
* interface.c (compare_parameter): Check for class_ok.
* simplify.c (gfc_simplify_same_type_as): Ditto.
2013-07-25 Janus Weil <janus@gcc.gnu.org>
PR fortran/57639
* gfortran.dg/unlimited_polymorphic_9.f90: New.
From-SVN: r201239
Terry Guo [Thu, 25 Jul 2013 04:10:27 +0000 (04:10 +0000)]
arm.c (thumb1_size_rtx_costs): Assign proper cost for shift_add/shift_sub0/shift_sub1 RTXs.
gcc/ChangeLog:
2013-07-24 Terry Guo <terry.guo@arm.com>
* config/arm/arm.c (thumb1_size_rtx_costs): Assign proper cost for
shift_add/shift_sub0/shift_sub1 RTXs.
gcc/testsuite/ChangeLog:
2013-07-24 Terry Guo <terry.guo@arm.com>
* gcc.target/arm/thumb1-Os-mult.c: New test case.
From-SVN: r201237
Bill Schmidt [Thu, 25 Jul 2013 01:24:14 +0000 (01:24 +0000)]
altivec.md (altivec_vpkpx): Handle little endian.
2013-07-24 Bill Schmidt <wschmidt@linux.ibm.com>
Anton Blanchard <anton@au1.ibm.com>
* config/rs6000/altivec.md (altivec_vpkpx): Handle little endian.
(altivec_vpks<VI_char>ss): Likewise.
(altivec_vpks<VI_char>us): Likewise.
(altivec_vpku<VI_char>us): Likewise.
(altivec_vpku<VI_char>um): Likewise.
Co-Authored-By: Anton Blanchard <anton@au1.ibm.com>
From-SVN: r201235
Paolo Carlini [Thu, 25 Jul 2013 00:46:46 +0000 (00:46 +0000)]
re PR libstdc++/57976 (Missing time_get<>::get() functions)
2013-07-24 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/57976
* doc/xml/manual/status_cxx2011.xml: Note missing time_get::get and
time_get::do_get.
From-SVN: r201234
GCC Administrator [Thu, 25 Jul 2013 00:16:50 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r201233
David Malcolm [Thu, 25 Jul 2013 00:14:01 +0000 (00:14 +0000)]
Introduce context class.
2013-07-24 David Malcolm <dmalcolm@redhat.com>
Introduce context class.
* Makefile.in (CONTEXT_H): New.
(OBJS): Add context.o.
(toplev.o): Add CONTEXT_H to dependencies.
(context.o): New.
* toplev.c (general_init): Create the singleton gcc::context
instance.
* context.c: New.
* context.h: New.
From-SVN: r201230
Ian Lance Taylor [Wed, 24 Jul 2013 22:30:25 +0000 (22:30 +0000)]
runtime: Handle allocating memory in cgo/SWIG function.
A function that returns an interface type and returns a value
that requires memory allocation will try to allocate while
appearing to be in a syscall. This patch lets that work.
From-SVN: r201226
Joern Rennecke [Wed, 24 Jul 2013 20:12:49 +0000 (20:12 +0000)]
re PR rtl-optimization/57968 (MODE_EXIT switches inserted too early)
PR rtl-optimization/57968
* mode-switching.c (create_pre_exit): Allow instructions that
don't set a return register to need a non-exit mode.
From-SVN: r201225
Ian Lance Taylor [Wed, 24 Jul 2013 18:25:51 +0000 (18:25 +0000)]
go-gcc.cc (Gcc_backend::non_zero_size_type): If a struct has a fields...
* go-gcc.cc (Gcc_backend::non_zero_size_type): If a struct has a
fields, recreate those fields with the first one with a non-zero
size.
From-SVN: r201222
Ian Lance Taylor [Wed, 24 Jul 2013 17:37:07 +0000 (17:37 +0000)]
runtime: Check _end rather than end to find end of program.
This fixes a problem on Solaris, where end is not defined in
the main program but comes from some shared library. This
only matters for 32-bit targets.
From-SVN: r201220
Ian Lance Taylor [Wed, 24 Jul 2013 16:53:17 +0000 (16:53 +0000)]
net: Only use GNU/Linux unix socket abstract paths on GNU/Linux.
From-SVN: r201217
Paolo Carlini [Wed, 24 Jul 2013 15:42:06 +0000 (15:42 +0000)]
random.h (random_device): Avoid using the FILE type.
2013-07-24 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/random.h (random_device): Avoid using the FILE type.
* include/std/random: Do not include <cstdio>.
* src/c++11/random.cc: ... include it here.
(random_device::_M_init, random_device::_M_fini,
random_device::_M_getval): Cast back and forth void* and FILE*.
From-SVN: r201215
Tim Shen [Wed, 24 Jul 2013 14:39:54 +0000 (14:39 +0000)]
Reimplment matcher using Depth-first search(backtracking).
2013-07-24 Tim Shen <timshen91@gmail.com>
Reimplment matcher using Depth-first search(backtracking).
PR libstdc++/53622
PR libstdc++/57173
* include/bits/regex.h: regex_match() and regex_search().
* include/bits/regex_cursor.h: Fix _M_set_pos().
* include/bits/regex_grep_matcher.h: add _M_dfs_match().
* include/bits/regex_grep_matcher.tcc: Implement it.
* testsuite/28_regex/algorithms/regex_match/extended/string_group_01.cc:
New.
* testsuite/28_regex/algorithms/regex_match/extended/string_group_02.cc:
New.
* testsuite/28_regex/algorithms/regex_search/basic/string_01.cc:
Remove xfail.
From-SVN: r201213
Ian Lance Taylor [Wed, 24 Jul 2013 13:18:45 +0000 (13:18 +0000)]
runtime: Move new 1.1.1 functions from thread-linux.c to runtime.c.
This way they are compiled on non-GNU/Linux systems.
From-SVN: r201209
Bill Schmidt [Wed, 24 Jul 2013 13:17:31 +0000 (13:17 +0000)]
vector.md (vec_realign_load_<mode>): Reorder input operands to vperm for little endian.
2013-07-24 Bill Schmidt <wschmidt@vnet.linux.ibm.com>
Anton Blanchard <anton@au1.ibm.com>
* vector.md (vec_realign_load_<mode>): Reorder input operands to
vperm for little endian.
* rs6000.c (rs6000_expand_builtin): Use lvsr instead of lvsl to
create the control mask for a vperm for little endian.
Co-Authored-By: Anton Blanchard <anton@au1.ibm.com>
From-SVN: r201208
Ian Lance Taylor [Wed, 24 Jul 2013 13:09:32 +0000 (13:09 +0000)]
net/http: Don't try to trace sendfile64 on alpha.
From Uros Bizjak.
From-SVN: r201206
Paolo Carlini [Wed, 24 Jul 2013 08:37:37 +0000 (08:37 +0000)]
2013-07-24 Paolo Carlini <paolo.carlini@oracle.com>
Tweak last ChangeLog entry.
From-SVN: r201202
Paolo Carlini [Wed, 24 Jul 2013 08:35:54 +0000 (08:35 +0000)]
re PR c++/57942 (g++-4.8.1 tries to instantiate wrong constructor)
/cp
2013-07-24 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57942
* typeck.c (ptr_reasonably_similar): Use COMPARE_STRICT if one of
the target types is incomplete; return a bool, not an int.
* cp-tree.h (ptr_reasonably_similar): Adjust declaration.
/testsuite
2013-07-24 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57942
* g++.dg/inherit/pr57942.C: New.
From-SVN: r201201
Michael Eager [Wed, 24 Jul 2013 00:19:58 +0000 (00:19 +0000)]
Correct ChangeLog for 201185.
From-SVN: r201200
GCC Administrator [Wed, 24 Jul 2013 00:16:46 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r201199
Bill Schmidt [Tue, 23 Jul 2013 22:36:04 +0000 (22:36 +0000)]
rs6000.c (altivec_expand_vec_perm_const): Reverse two operands for little-endian.
2013-07-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
Anton Blanchard <anton@au1.ibm.com>
* config/rs6000/rs6000.c (altivec_expand_vec_perm_const): Reverse
two operands for little-endian.
Co-Authored-By: Anton Blanchard <anton@au1.ibm.com>
From-SVN: r201195
Steve Ellcey [Tue, 23 Jul 2013 22:34:10 +0000 (22:34 +0000)]
mips.c (mips_case_values_threshold): New.
2013-07-23 Steve Ellcey <sellcey@mips.com>
* config/mips/mips.c (mips_case_values_threshold): New.
(TARGET_CASE_VALUES_THRESHOLD): Define.
From-SVN: r201194
Bill Schmidt [Tue, 23 Jul 2013 22:30:58 +0000 (22:30 +0000)]
rs6000.c (altivec_expand_vec_perm_const): Correct selection of field for vector splat in little endian mode.
2013-07-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
Anton Blanchard <anton@au1.ibm.com>
* config/rs6000/rs6000.c (altivec_expand_vec_perm_const): Correct
selection of field for vector splat in little endian mode.
Co-Authored-By: Anton Blanchard <anton@au1.ibm.com>
From-SVN: r201193
Ian Lance Taylor [Tue, 23 Jul 2013 21:23:27 +0000 (21:23 +0000)]
log/syslog: Restore interface to make this work on Solaris again.
From-SVN: r201188
Michael Meissner [Tue, 23 Jul 2013 21:19:03 +0000 (21:19 +0000)]
vector.md (xor<mode>3): Move 128-bit boolean expanders to rs6000.md.
[gcc]
2013-07-23 Michael Meissner <meissner@linux.vnet.ibm.com>
* config/rs6000/vector.md (xor<mode>3): Move 128-bit boolean
expanders to rs6000.md.
(ior<mode>3): Likewise.
(and<mode>3): Likewise.
(one_cmpl<mode>2): Likewise.
(nor<mode>3): Likewise.
(andc<mode>3): Likewise.
(eqv<mode>3): Likewise.
(nand<mode>3): Likewise.
(orc<mode>3): Likewise.
* config/rs6000/rs6000-protos.h (rs6000_split_logical): New
declaration.
* config/rs6000/rs6000.c (rs6000_split_logical_inner): Add support
to split multi-word logical operations.
(rs6000_split_logical_di): Likewise.
(rs6000_split_logical): Likewise.
* config/rs6000/vsx.md (VSX_L2): Delete, no longer used.
(vsx_and<mode>3_32bit): Move 128-bit logical insns to rs6000.md,
and allow TImode operations in 32-bit.
(vsx_and<mode>3_64bit): Likewise.
(vsx_ior<mode>3_32bit): Likewise.
(vsx_ior<mode>3_64bit): Likewise.
(vsx_xor<mode>3_32bit): Likewise.
(vsx_xor<mode>3_64bit): Likewise.
(vsx_one_cmpl<mode>2_32bit): Likewise.
(vsx_one_cmpl<mode>2_64bit): Likewise.
(vsx_nor<mode>3_32bit): Likewise.
(vsx_nor<mode>3_64bit): Likewise.
(vsx_andc<mode>3_32bit): Likewise.
(vsx_andc<mode>3_64bit): Likewise.
(vsx_eqv<mode>3_32bit): Likewise.
(vsx_eqv<mode>3_64bit): Likewise.
(vsx_nand<mode>3_32bit): Likewise.
(vsx_nand<mode>3_64bit): Likewise.
(vsx_orc<mode>3_32bit): Likewise.
(vsx_orc<mode>3_64bit): Likewise.
* config/rs6000/rs6000.h (VLOGICAL_REGNO_P): Always allow vector
logical types in GPRs.
* config/rs6000/altivec.md (altivec_and<mode>3): Move 128-bit
logical insns to rs6000.md, and allow TImode operations in
32-bit.
(altivec_ior<mode>3): Likewise.
(altivec_xor<mode>3): Likewise.
(altivec_one_cmpl<mode>2): Likewise.
(altivec_nor<mode>3): Likewise.
(altivec_andc<mode>3): Likewise.
* config/rs6000/rs6000.md (BOOL_128): New mode iterators and mode
attributes for moving the 128-bit logical operations into
rs6000.md.
(BOOL_REGS_OUTPUT): Likewise.
(BOOL_REGS_OP1): Likewise.
(BOOL_REGS_OP2): Likewise.
(BOOL_REGS_UNARY): Likewise.
(BOOL_REGS_AND_CR0): Likewise.
(one_cmpl<mode>2): Add support for DI logical operations on
32-bit, splitting the operations to 32-bit.
(anddi3): Likewise.
(iordi3): Likewise.
(xordi3): Likewise.
(and<mode>3, 128-bit types): Rewrite 2013-06-06 logical operator
changes to combine the 32/64-bit code, allow logical operations on
TI mode in 32-bit, and to use similar match_operator patterns like
scalar mode uses. Combine the Altivec and VSX code for logical
operations, and move it here.
(ior<mode>3, 128-bit types): Likewise.
(xor<mode>3, 128-bit types): Likewise.
(one_cmpl<mode>3, 128-bit types): Likewise.
(nor<mode>3, 128-bit types): Likewise.
(andc<mode>3, 128-bit types): Likewise.
(eqv<mode>3, 128-bit types): Likewise.
(nand<mode>3, 128-bit types): Likewise.
(orc<mode>3, 128-bit types): Likewise.
(and<mode>3_internal): Likewise.
(bool<mode>3_internal): Likewise.
(boolc<mode>3_internal1): Likewise.
(boolc<mode>3_internal2): Likewise.
(boolcc<mode>3_internal1): Likewise.
(boolcc<mode>3_internal2): Likewise.
(eqv<mode>3_internal1): Likewise.
(eqv<mode>3_internal2): Likewise.
(one_cmpl1<mode>3_internal): Likewise.
[gcc/testsuite]
2013-07-23 Michael Meissner <meissner@linux.vnet.ibm.com>
* gcc.target/powerpc/bool2.h: New file, test the code generation
of logical operations for power5, altivec, power7, and power8
systems.
* gcc.target/powerpc/bool2-p5.c: Likewise.
* gcc.target/powerpc/bool2-av.c: Likewise.
* gcc.target/powerpc/bool2-p7.c: Likewise.
* gcc.target/powerpc/bool2-p8.c: Likewise.
* gcc.target/powerpc/bool3.h: Likewise.
* gcc.target/powerpc/bool3-av.c: Likewise.
* gcc.target/powerpc/bool2-p7.c: Likewise.
* gcc.target/powerpc/bool2-p8.c: Likewise.
From-SVN: r201187
David Holsgrove [Tue, 23 Jul 2013 21:15:21 +0000 (21:15 +0000)]
microblaze.c (microblaze_expand_prologue): Rename flag_stack_usage to flag_stack_usage_info.
* config/microblaze/microblaze.c (microblaze_expand_prologue):
Rename flag_stack_usage to flag_stack_usage_info.
From-SVN: r201186
David Holsgrove [Tue, 23 Jul 2013 21:09:50 +0000 (21:09 +0000)]
microblaze.c: Add microblaze_asm_output_mi_thunk and define TARGET_ASM_OUTPUT_MI_THUNK and...
* config/microblaze/microblaze.c: Add microblaze_asm_output_mi_thunk
and define TARGET_ASM_OUTPUT_MI_THUNK and
TARGET_ASM_CAN_OUTPUT_MI_THUNK.
From-SVN: r201185
Ian Lance Taylor [Tue, 23 Jul 2013 20:38:49 +0000 (20:38 +0000)]
net: Remove Solaris-specific version of listenerSockaddr.
Solaris will use the version in sock_unix.go.
From-SVN: r201183
Ian Lance Taylor [Tue, 23 Jul 2013 20:32:26 +0000 (20:32 +0000)]
runtime: Declare epoll_create1 if necessary.
From-SVN: r201181
Ian Lance Taylor [Tue, 23 Jul 2013 20:26:09 +0000 (20:26 +0000)]
runtime: Support cgo callbacks from threads started by C.
This adjusts the extram support to work with gccgo. There are
some corresponding changes to cgo in
https://codereview.appspot.com/
11406047/ .
From-SVN: r201179
Joseph Myers [Tue, 23 Jul 2013 20:17:52 +0000 (21:17 +0100)]
* c-parser.c (struct c_generic_association): Fix typo.
From-SVN: r201178
Eric Botcazou [Tue, 23 Jul 2013 18:11:07 +0000 (18:11 +0000)]
* doc/invoke.texi (SPARC Options): Document new leon3 processor value.
From-SVN: r201177
Ian Lance Taylor [Tue, 23 Jul 2013 16:14:13 +0000 (16:14 +0000)]
go-backend.c: Don't #include "rtl.h".
* go-backend.c: Don't #include "rtl.h".
(go_imported_unsafe): Don't call init_varasm_once.
* Make-lang.in (go/go-backend.o): Don't depend on $(RTL_H).
From-SVN: r201176
Yufeng Zhang [Tue, 23 Jul 2013 16:09:50 +0000 (16:09 +0000)]
[AArch64, ILP32] Add change to gcc.target/aarch64/vect_smlal_1.c that was missed from the previous commit (r201166).
From-SVN: r201175
Po-Chun Chang [Tue, 23 Jul 2013 15:56:37 +0000 (15:56 +0000)]
reload.c (find_reloads): Exit loop once we find this operand cannot be reloaded somehow for this alternative.
2013-07-22 Po-Chun Chang <pchang9@cs.wisc.edu>
* reload.c (find_reloads): Exit loop once we find this operand
cannot be reloaded somehow for this alternative.
* reload.c (find_reloads): Exit loop once we find a hard register.
* rtlanal.c (computed_jump_p): Exit loop once we find label
reference is used.
* i386.c (ix86_pad_returns): Exit loop after setting replace.
* cfgloopmanip.c (remove_path): Exit loop after setting
irred_invalidated.
* gensupport.c (subst_dup): Avoid loop if code is not
MATCH_DUP nor MATCH_OP_DUP.
From-SVN: r201174
Nicklas Bo Jensen [Tue, 23 Jul 2013 15:39:45 +0000 (15:39 +0000)]
md.texi (Machine-Specific Peephole Optimizers): Fix a typo.
2013-07-23 Nicklas Bo Jensen <nbjensen@gmail.com>
* doc/md.texi (Machine-Specific Peephole Optimizers): Fix a
typo.
From-SVN: r201173
Ian Lance Taylor [Tue, 23 Jul 2013 13:46:26 +0000 (13:46 +0000)]
go-lang.c: Don't #include "except.h".
* go-lang.c: Don't #include "except.h".
* Make-lang.in (go/go-lang.o): Don't depend on $(EXCEPT_H).
From-SVN: r201171
Yufeng Zhang [Tue, 23 Jul 2013 12:33:14 +0000 (12:33 +0000)]
[AArch64, ILP32] 6/6 Add support for "wsp" register.
gcc/
* config/aarch64/aarch64.c (aarch64_hard_regno_mode_ok): Also return
true for SP_REGNUM if mode == ptr_mode.
* config/aarch64/aarch64.h (ADDITIONAL_REGISTER_NAMES): Add "wsp"
with value R0_REGNUM + 31.
From-SVN: r201170
Tim Shen [Tue, 23 Jul 2013 12:31:51 +0000 (12:31 +0000)]
Implement regex_iterator and regex_token_iterator.
2013-07-23 Tim Shen <timshen91@gmail.com>
Implement regex_iterator and regex_token_iterator.
* include/bits/regex.h: regex_iterator and regex_token_iterator.
* testsuite/28_regex/iterators/regex_iterator/char/string_01.cc:
New.
* testsuite/28_regex/iterators/regex_iterator/wchar_t/string_01.cc:
New.
* testsuite/28_regex/iterators/regex_token_iterator/char/string_01.cc:
New.
* testsuite/28_regex/iterators/regex_token_iterator/wchar_t/string_01.cc:
New.
From-SVN: r201169
Yufeng Zhang [Tue, 23 Jul 2013 12:29:51 +0000 (12:29 +0000)]
[AArch64, ILP32] 5/6 Pad pointer-typed stack argument downward in ILP32.
gcc/
* config/aarch64/aarch64.c (aarch64_pad_arg_upward): In big-endian,
pad pointer-typed argument downward.
gcc/testsuite/
* gcc.target/aarch64/test-ptr-arg-on-stack-1.c: New test.
From-SVN: r201168
Yufeng Zhang [Tue, 23 Jul 2013 12:26:33 +0000 (12:26 +0000)]
[AArch64, ILP32] 4/6 Define _ILP32 and __ILP32__.
gcc/
* config/aarch64/aarch64.h (TARGET_CPU_CPP_BUILTINS): Define _ILP32
and __ILP32__ when the ILP32 model is in use.
From-SVN: r201167
Yufeng Zhang [Tue, 23 Jul 2013 12:23:05 +0000 (12:23 +0000)]
[AArch64, ILP32] 3/6 Change tests to be ILP32-friendly.
gcc/testsuite/
* gcc.dg/
20020219-1.c: Skip the test on aarch64*-*-* in ilp32.
* gcc.target/aarch64/aapcs64/test_18.c (struct y): Change the field
type from long to long long.
* gcc.target/aarch64/atomic-op-long.c: Update dg-final directives
to have effective-target keywords of lp64 and ilp32.
* gcc.target/aarch64/fcvt_double_int.c: Likewise.
* gcc.target/aarch64/fcvt_double_long.c: Likewise.
* gcc.target/aarch64/fcvt_double_uint.c: Likewise.
* gcc.target/aarch64/fcvt_double_ulong.c: Likewise.
* gcc.target/aarch64/fcvt_float_int.c: Likewise.
* gcc.target/aarch64/fcvt_float_long.c: Likewise.
* gcc.target/aarch64/fcvt_float_uint.c: Likewise.
* gcc.target/aarch64/fcvt_float_ulong.c: Likewise.
* gcc.target/aarch64/vect_smlal_1.c: Replace 'long' with 'long long'.
From-SVN: r201166
Yufeng Zhang [Tue, 23 Jul 2013 12:20:05 +0000 (12:20 +0000)]
[AArch64, ILP32] 2/6 More backend changes and support for small absolute and
small PIC addressing models
gcc/
* config/aarch64/aarch64.c (POINTER_BYTES): New define.
(aarch64_load_symref_appropriately): In the case of
SYMBOL_SMALL_ABSOLUTE, use the mode of 'dest' instead of Pmode
to generate new rtx; likewise to the case of SYMBOL_SMALL_GOT.
(aarch64_expand_mov_immediate): In the case of SYMBOL_FORCE_TO_MEM,
change to pass 'ptr_mode' to force_const_mem and zero-extend 'mem'
if 'mode' doesn't equal to 'ptr_mode'.
(aarch64_output_mi_thunk): Add an assertion on the alignment of
'vcall_offset'; change to call aarch64_emit_move differently depending
on whether 'Pmode' equals to 'ptr_mode' or not; use 'POINTER_BYTES'
to calculate the upper bound of 'vcall_offset'.
(aarch64_cannot_force_const_mem): Change to also return true if
mode != ptr_mode.
(aarch64_legitimize_reload_address): In the case of large
displacements, add new local variable 'xmode' and an assertion
based on it; change to use 'xmode' to generate the new rtx and
reload.
(aarch64_asm_trampoline_template): Change to generate the template
differently depending on TARGET_ILP32 or not; change to use
'POINTER_BYTES' in the argument passed to assemble_aligned_integer.
(aarch64_trampoline_size): Removed.
(aarch64_trampoline_init): Add new local constant 'tramp_code_sz'
and replace immediate literals with it. Change to use 'ptr_mode'
instead of 'DImode' and call convert_memory_address if the mode
of 'fnaddr' doesn't equal to 'ptr_mode'.
(aarch64_elf_asm_constructor): Change to use assemble_aligned_integer
to output symbol.
(aarch64_elf_asm_destructor): Likewise.
* config/aarch64/aarch64.h (TRAMPOLINE_SIZE): Change to be dependent
on TARGET_ILP32 instead of aarch64_trampoline_size.
* config/aarch64/aarch64.md (movsi_aarch64): Add new alternatives
of 'mov' between WSP and W registers as well as 'adr' and 'adrp'.
(loadwb_pair<GPI:mode>_<PTR:mode>): Rename to ...
(loadwb_pair<GPI:mode>_<P:mode>): ... this. Replace PTR with P.
(storewb_pair<GPI:mode>_<PTR:mode>): Likewise; rename to ...
(storewb_pair<GPI:mode>_<P:mode>): ... this.
(add_losym): Change to 'define_expand' and call gen_add_losym_<mode>
depending on the value of 'mode'.
(add_losym_<mode>): New.
(ldr_got_small_<mode>): New, based on ldr_got_small.
(ldr_got_small): Remove.
(ldr_got_small_sidi): New.
* config/aarch64/iterators.md (P): New.
(PTR): Change to 'ptr_mode' in the condition.
From-SVN: r201165
Yufeng Zhang [Tue, 23 Jul 2013 12:12:53 +0000 (12:12 +0000)]
[AArch64, ILP32] 1/6 Initial support - configury changes
gcc/
* config.gcc (aarch64*-*-*): Support --with-abi.
(aarch64*-*-elf): Support --with-multilib-list.
(aarch64*-*-linux*): Likewise.
(supported_defaults): Add abi to aarch64*-*-*.
* configure.ac: Mention AArch64 for --with-multilib-list.
* configure: Re-generated.
* config/aarch64/biarchilp32.h: New file.
* config/aarch64/biarchlp64.h: New file.
* config/aarch64/aarch64-elf.h (ENDIAN_SPEC): New define.
(ABI_SPEC): Ditto.
(MULTILIB_DEFAULTS): Ditto.
(DRIVER_SELF_SPECS): Ditto.
(ASM_SPEC): Update to also substitute -mabi.
* config/aarch64/aarch64-elf-raw.h (LINK_SPEC): Add linker script
file whose name depends on -mabi= and -mbig-endian.
* config/aarch64/aarch64.h (LONG_TYPE_SIZE): Change to depend on
TARGET_ILP32.
(POINTER_SIZE): New define.
(POINTERS_EXTEND_UNSIGNED): Ditto.
(enum aarch64_abi_type): New enumeration tag.
(AARCH64_ABI_LP64, AARCH64_ABI_ILP32): New enumerators.
(AARCH64_ABI_DEFAULT): Define to AARCH64_ABI_LP64 if undefined.
(TARGET_ILP32): New define.
* config/aarch64/aarch64.opt (mabi): New.
(aarch64_abi): New.
(ilp32, lp64): New values for -mabi.
* config/aarch64/t-aarch64 (comma): New define.
(MULTILIB_OPTIONS): Ditto.
(MULTILIB_DIRNAMES): Ditto.
* config/aarch64/t-aarch64-linux (MULTIARCH_DIRNAME): New define.
* doc/invoke.texi: Document -mabi for AArch64.
From-SVN: r201164
Georg-Johann Lay [Tue, 23 Jul 2013 11:45:57 +0000 (11:45 +0000)]
avr.md: Explain asm print modifier 'r' for REG.
* config/avr/avr.md: Explain asm print modifier 'r' for REG.
From-SVN: r201163
Ondřej Bílka [Tue, 23 Jul 2013 11:39:41 +0000 (13:39 +0200)]
decl.c: Fix comment typos.
2013-07-23 Ondřej Bílka <neleai@seznam.cz>
* decl.c: Fix comment typos.
* interface.c: Likewise.
* trans-array.c: Likewise.
* trans.c: Likewise.
From-SVN: r201162
Uros Bizjak [Tue, 23 Jul 2013 09:45:30 +0000 (11:45 +0200)]
fpu-387.h (get_fpu_rounding_mode): Read rounding mode from SSE mxcsr register on x86_64.
* config/fpu-387.h (get_fpu_rounding_mode): Read rounding mode
from SSE mxcsr register on x86_64.
From-SVN: r201161
Paolo Carlini [Tue, 23 Jul 2013 09:39:01 +0000 (09:39 +0000)]
random: Add back <cstdio> include.
2013-07-23 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/random: Add back <cstdio> include.
* src/c++11/random.cc: Don't include <cstdio> here.
From-SVN: r201160
Alexander Monakov [Tue, 23 Jul 2013 09:17:10 +0000 (13:17 +0400)]
elf.c (elf_syminfo): Loop over the elf_syminfo_data chain.
* elf.c (elf_syminfo): Loop over the elf_syminfo_data chain.
From-SVN: r201159
Alexander Monakov [Tue, 23 Jul 2013 09:12:00 +0000 (13:12 +0400)]
elf.c (backtrace_initialize): Pass elf_fileline_fn to dl_iterate_phdr callbacks.
* elf.c (backtrace_initialize): Pass elf_fileline_fn to
dl_iterate_phdr callbacks.
From-SVN: r201158
Andreas Krebbel [Tue, 23 Jul 2013 07:20:52 +0000 (07:20 +0000)]
linux-unwind.h: Use the proper dwarf to hard reg mapping for FPRs when...
2013-07-23 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/linux-unwind.h: Use the proper dwarf to hard reg
mapping for FPRs when creating the fallback framestate.
From-SVN: r201156
Ian Lance Taylor [Tue, 23 Jul 2013 04:42:09 +0000 (04:42 +0000)]
runtime: Ignore SIGPROF if not on a Go thread.
From-SVN: r201154
Tom Tromey [Tue, 23 Jul 2013 01:54:24 +0000 (01:54 +0000)]
c-common.h (enum rid): New constant.
2013-07-23 Tom Tromey <tromey@redhat.com>
Joseph Myers <joseph@codesourcery.com>
c-family:
* c-common.h (enum rid) <RID_GENERIC>: New constant.
* c-common.c (c_common_reswords): Add _Generic.
c:
* c-parser.c (struct c_generic_association): New.
(c_generic_association_d): New typedef.
(c_parser_generic_selection): New function.
(c_parser_postfix_expression): Handle RID_GENERIC.
testsuite:
* gcc.dg/c11-generic-1.c: New file.
* gcc.dg/c11-generic-2.c: New file.
Co-Authored-By: Joseph Myers <joseph@codesourcery.com>
From-SVN: r201153
GCC Administrator [Tue, 23 Jul 2013 00:16:44 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r201152
Bill Schmidt [Mon, 22 Jul 2013 23:08:44 +0000 (23:08 +0000)]
rs6000.c (rs6000_expand_vector_init): Fix endianness when selecting field to splat.
2013-07-22 Bill Schmidt <wschmidt@vnet.linux.ibm.com>
Anton Blanchard <anton@au1.ibm.com>
* config/rs6000/rs6000.c (rs6000_expand_vector_init): Fix
endianness when selecting field to splat.
Co-Authored-By: Anton Blanchard <anton@au1.ibm.com>
From-SVN: r201149
Eric Christopher [Mon, 22 Jul 2013 21:54:33 +0000 (21:54 +0000)]
dwarf2out.c (die_odr_checksum): New function to use CHECKSUM_ macros and ULEB128 for DIE tag.
2013-07-22 Eric Christopher <echristo@gmail.com>
* dwarf2out.c (die_odr_checksum): New function to use
CHECKSUM_ macros and ULEB128 for DIE tag.
(generate_type_signature): Use.
From-SVN: r201148
Eric Botcazou [Mon, 22 Jul 2013 21:41:44 +0000 (21:41 +0000)]
config.gcc (sparc*-*-*): Accept leon3 processor.
* config.gcc (sparc*-*-*): Accept leon3 processor.
(sparc-leon*-*): Merge with sparc*-*-* and add leon3 support.
* doc/invoke.texi (SPARC Options): Adjust -mfix-ut699 entry.
* config/sparc/sparc-opts.h (enum processor_type): Add PROCESSOR_LEON3.
* config/sparc/sparc.opt (enum processor_type): Add leon3.
(mfix-ut699): Adjust comment.
* config/sparc/sparc.h (TARGET_CPU_leon3): New define.
(CPP_CPU32_DEFAULT_SPEC): Add leon3 support.
(CPP_CPU_SPEC): Likewise.
(ASM_CPU_SPEC): Likewise.
* config/sparc/sparc.c (leon3_cost): New constant.
(sparc_option_override): Add leon3 support.
(mem_ref): New function.
(sparc_gate_work_around_errata): Return true if -mfix-ut699 is enabled.
(sparc_do_work_around_errata): Look into the instruction in the delay
slot and adjust accordingly. Add fix for the data cache nullify issues
of the UT699. Change insertion position for the NOP.
* config/sparc/leon.md (leon_fpalu, leon_fpmds, write_buf): Delete.
(leon3_load): New reservation.
(leon_store): Bump latency to 2.
(grfpu): New automaton.
(grfpu_alu): New unit.
(grfpu_ds): Likewise.
(leon_fp_alu): Adjust.
(leon_fp_mult): Delete.
(leon_fp_div): Split into leon_fp_divs and leon_fp_divd.
(leon_fp_sqrt): Split into leon_fp_sqrts and leon_fp_sqrtd.
* config/sparc/sparc.md (cpu): Add leon3.
* config/sparc/sync.md (atomic_exchangesi): Disable if -mfix-ut699.
(swapsi): Likewise.
(atomic_test_and_set): Likewise.
(ldstub): Likewise.
From-SVN: r201147
Jason Merrill [Mon, 22 Jul 2013 19:43:27 +0000 (15:43 -0400)]
re PR libstdc++/57914 (Memory leak in __cxa_thread_atexit when using thread_local)
PR libstdc++/57914
* libsupc++/atexit_thread.cc (run): Delete cleanup elts.
From-SVN: r201146
Paolo Carlini [Mon, 22 Jul 2013 19:43:21 +0000 (19:43 +0000)]
cp-tree.h (DERIVED_FROM_P): Pass tf_none to lookup_base, not tf_warning_or_error.
2013-07-22 Paolo Carlini <paolo.carlini@oracle.com>
* cp-tree.h (DERIVED_FROM_P): Pass tf_none to lookup_base, not
tf_warning_or_error.
From-SVN: r201145
Mike Stump [Mon, 22 Jul 2013 18:52:01 +0000 (18:52 +0000)]
Fix typo.
From-SVN: r201144
Jürgen Urban [Mon, 22 Jul 2013 18:48:32 +0000 (18:48 +0000)]
config.gcc (mips*-*-*): Add --with-fpu support.
gcc/
2013-07-26 Jürgen Urban <JuergenUrban@gmx.de>
* config.gcc (mips*-*-*): Add --with-fpu support. Make single the
default for R5900 targets.
* config/mips/mips.h (OPTION_DEFAULT_SPECS): Handle --with-fpu.
(ISA_HAS_LDC1_SDC1): Set to false for TARGET_MIPS5900.
* config/mips/mips.c (mips_option_override): Report an error for
-march=r5900 -mhard-float -mdouble-float. Use spu_single_format
for -march=r5900 -mhard-float.
From-SVN: r201143
Tobias Burnus [Mon, 22 Jul 2013 17:59:33 +0000 (19:59 +0200)]
Really add testsuite/gfortran.dg/coarray_31.f90, which should be in commit Rev.
Really add testsuite/gfortran.dg/coarray_31.f90, which should be
in commit Rev. 201140.
From-SVN: r201142
Mike Stump [Mon, 22 Jul 2013 17:46:05 +0000 (17:46 +0000)]
Fix typos.
From-SVN: r201141
Tobias Burnus [Mon, 22 Jul 2013 17:28:56 +0000 (19:28 +0200)]
re PR fortran/57906 (Coarray components: Assignment optimized away (gfortran.dg/coarray/lib_realloc_1.f90))
2013-07-22 Tobias Burnus <burnus@net-b.de>
PR fortran/57906
PR fortran/52052
* class.c (gfc_build_class_symbol): Set coarray_comp.
* trans-array.c (structure_alloc_comps): For coarrays,
directly use the data pointer address.
2013-07-22 Tobias Burnus <burnus@net-b.de>
PR fortran/57906
PR fortran/52052
* coarray/lib_realloc_1.f90: Permit optimization.
* gfortran.dg/coarray_31.f90: New.
From-SVN: r201140
Mike Stump [Mon, 22 Jul 2013 17:23:17 +0000 (17:23 +0000)]
Fix typo.
From-SVN: r201139