froydnj [Mon, 29 Jul 2013 17:13:05 +0000 (17:13 +0000)]
libstdc++-v3/
* include/std/atomic (compare_exchange_weak, compare_exchange_strong):
Add call to __cmpexch_failure_order.
* testsuite/util/testsuite_common_types.h
(compare_exchange_order_lowering): New generator.
* testsuite/29_atomics/atomic/requirements/compare_exchange_lowering.cc:
New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201315
138bc75d-0d04-0410-961f-
82ee72b054a4
macro [Mon, 29 Jul 2013 14:37:30 +0000 (14:37 +0000)]
gcc/
* config/mips/linux.h (GLIBC_DYNAMIC_LINKER): Handle `-mnan=2008'.
(UCLIBC_DYNAMIC_LINKER): New macro.
* config/mips/linux64.h (GLIBC_DYNAMIC_LINKER32): Handle
`-mnan=2008'.
(GLIBC_DYNAMIC_LINKER64, GLIBC_DYNAMIC_LINKERN32): Likewise.
(UCLIBC_DYNAMIC_LINKER32): Undefine macro first. Handle
`-mnan=2008'.
(UCLIBC_DYNAMIC_LINKER64): Redefine macro.
(UCLIBC_DYNAMIC_LINKERN32): Likewise.
* config/mips/mips-modes.def: Remove RESET_FLOAT_FORMAT calls
for SF and DF modes. Use ieee_quad_format for TF mode.
* config/mips/mips-opts.h (mips_ieee_754_setting): New enum.
* config/mips/mips.c (mips_file_start): Output a `.nan' directive.
(mips_option_override): Handle `-mnan=legacy'.
* config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Handle
`-mabs=2008' and `-mnan=2008'.
(OPTION_DEFAULT_SPECS): Add "nan" default.
(ASM_SPEC): Handle `-mnan='.
[!HAVE_AS_NAN] (HAVE_AS_NAN): New macro.
* config/mips/mips.md (abs<mode>2): Handle `-mabs=2008', update
comment accordingly.
(neg<mode>2): Likewise.
* config/mips/mips.opt (mabs, mnan): New options.
* doc/install.texi (Configuration): Document `--with-nan=' option.
* doc/invoke.texi (Option Summary): List MIPS `-mabs=' and
`-mnan=' options.
(MIPS Options): Document them.
* config.gcc <mips*-*-*>: Handle `--with-nan='.
* configure.ac <mips*-*-*>: Check for GAS `-mnan=2008' support.
* configure: Regenerate.
* config.in: Regenerate.
gcc/testsuite/
* gcc.target/mips/fabs-2008.c: New test case.
* gcc.target/mips/fabs-legacy.c: New test case.
* gcc.target/mips/fabsf-2008.c: New test case.
* gcc.target/mips/fabsf-legacy.c: New test case.
* gcc.target/mips/fneg-2008.c: New test case.
* gcc.target/mips/fneg-legacy.c: New test case.
* gcc.target/mips/fneg-2008.c: New test case.
* gcc.target/mips/fneg-legacy.c: New test case.
* gcc.target/mips/nan-2008.c: New test case.
* gcc.target/mips/nan-legacy.c: New test case.
* gcc.target/mips/nanf-2008.c: New test case.
* gcc.target/mips/nanf-legacy.c: New test case.
* gcc.target/mips/nans-2008.c: New test case.
* gcc.target/mips/nans-legacy.c: New test case.
* gcc.target/mips/nansf-2008.c: New test case.
* gcc.target/mips/nansf-legacy.c: New test case.
* gcc.target/mips/mips.exp: Handle `-mabs=' and `-mnan='.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201313
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Mon, 29 Jul 2013 11:17:51 +0000 (11:17 +0000)]
2013-07-29 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.md (float post-reload splitters): Do not check
for subregs of SSE registers.
2013-07-29 Uros Bizjak <ubizjak@gmail.com>
H.J. Lu <hongjiu.lu@intel.com>
PR target/57954
PR target/57988
* config/i386/i386.md (post-reload splitter
to avoid partial SSE reg dependency stalls): New pattern.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201308
138bc75d-0d04-0410-961f-
82ee72b054a4
ramana [Mon, 29 Jul 2013 10:36:11 +0000 (10:36 +0000)]
Fix incorrect changelog entry.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201307
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [Mon, 29 Jul 2013 08:03:38 +0000 (08:03 +0000)]
2013-07-29 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/target.h (htm_begin, htm_commit, htm_abort)
(htm_transaction_active): Enable zEC12 instructions in the
assembler.
* configure.tgt: Remove -Wa,-march=zEC12 from XCFLAGS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201301
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [Mon, 29 Jul 2013 08:02:21 +0000 (08:02 +0000)]
2013-07-29 Dominik Vogt <vogt@linux.vnet.ibm.com>
* config/s390/s390.md ("movcc"): Swap load and store instructions.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201300
138bc75d-0d04-0410-961f-
82ee72b054a4
kyukhin [Mon, 29 Jul 2013 06:05:34 +0000 (06:05 +0000)]
* lib/target-supports.exp (check_effective_target_non_bionic): New
effective-target test.
* g++.dg/tls/thread_local4.C: Disable test for Bionic.
* g++.dg/tls/thread_local4g.C: Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201298
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Mon, 29 Jul 2013 00:16:42 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201297
138bc75d-0d04-0410-961f-
82ee72b054a4
tkoenig [Sun, 28 Jul 2013 21:10:23 +0000 (21:10 +0000)]
2013-07-28 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/58009
* expr.c (gfc_check_vardef_context): Check for same values in
vector expression subscripts.
2013-07-28 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/58009
* gfortran.dg/vector_subsript_7.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201294
138bc75d-0d04-0410-961f-
82ee72b054a4
timshen [Sun, 28 Jul 2013 10:23:43 +0000 (10:23 +0000)]
Fix incorrect ChangeLog entry.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201292
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sun, 28 Jul 2013 00:16:47 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201290
138bc75d-0d04-0410-961f-
82ee72b054a4
amylaar [Sat, 27 Jul 2013 18:41:49 +0000 (18:41 +0000)]
* config/epiphany/epiphany.c (epiphany_compute_frame_size):
Also reserve space for saving UNKNOWN_REGNUM for leaf functions.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201287
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Sat, 27 Jul 2013 14:17:01 +0000 (14:17 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201286
138bc75d-0d04-0410-961f-
82ee72b054a4
janus [Sat, 27 Jul 2013 12:55:59 +0000 (12:55 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201284
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Sat, 27 Jul 2013 06:38:12 +0000 (06:38 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201282
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sat, 27 Jul 2013 00:16:44 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201279
138bc75d-0d04-0410-961f-
82ee72b054a4
ccoutant [Fri, 26 Jul 2013 20:14:43 +0000 (20:14 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201275
138bc75d-0d04-0410-961f-
82ee72b054a4
wschmidt [Fri, 26 Jul 2013 19:38:14 +0000 (19:38 +0000)]
Correct ChangeLog entry
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201274
138bc75d-0d04-0410-961f-
82ee72b054a4
amylaar [Fri, 26 Jul 2013 18:35:29 +0000 (18:35 +0000)]
* gcc.dg/torture/pr37868.c: Disable for epiphany.
* gcc.dg/sibcall-6.c: Enable for epiphany.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201272
138bc75d-0d04-0410-961f-
82ee72b054a4
amylaar [Fri, 26 Jul 2013 18:28:27 +0000 (18:28 +0000)]
* gcc.dg/pr27095.c: For Epiphany, add -mshort-calls.
* gcc.dg/tree-ssa/loop-1.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201271
138bc75d-0d04-0410-961f-
82ee72b054a4
amylaar [Fri, 26 Jul 2013 18:16:23 +0000 (18:16 +0000)]
* gcc.c-torture/execute/builtins/stpcpy-chk.x: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201270
138bc75d-0d04-0410-961f-
82ee72b054a4
amylaar [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. 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201268
138bc75d-0d04-0410-961f-
82ee72b054a4
ktkachov [Fri, 26 Jul 2013 14:54:06 +0000 (14:54 +0000)]
gcc/testsuite/
* gcc.target/arm/minmax_minus.c: Scan
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201267
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Fri, 26 Jul 2013 11:50:39 +0000 (11:50 +0000)]
* gcc.dg/guality/guality.exp: Skip on AIX.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201266
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Fri, 26 Jul 2013 11:49:12 +0000 (11:49 +0000)]
* gcc.target/powerpc/ppc-vector-memcpy.c: Test use of VMX for memcpy
not initializers.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201265
138bc75d-0d04-0410-961f-
82ee72b054a4
ibolton [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)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201263
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Fri, 26 Jul 2013 10:38:40 +0000 (10:38 +0000)]
2013-07-26 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57101
* g++.dg/cpp0x/pr57101.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201262
138bc75d-0d04-0410-961f-
82ee72b054a4
ibolton [Fri, 26 Jul 2013 10:30:20 +0000 (10:30 +0000)]
AArch64 support for NEG in vector registers for DI and SI mode
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201261
138bc75d-0d04-0410-961f-
82ee72b054a4
ktkachov [Fri, 26 Jul 2013 08:22:25 +0000 (08:22 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201260
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Fri, 26 Jul 2013 00:16:36 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201259
138bc75d-0d04-0410-961f-
82ee72b054a4
sterling [Thu, 25 Jul 2013 22:18:21 +0000 (22:18 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201255
138bc75d-0d04-0410-961f-
82ee72b054a4
janus [Thu, 25 Jul 2013 21:41:22 +0000 (21:41 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201254
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Thu, 25 Jul 2013 21:24:07 +0000 (21:24 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201253
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Thu, 25 Jul 2013 20:47:16 +0000 (20:47 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201252
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Thu, 25 Jul 2013 17:10:21 +0000 (17:10 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201251
138bc75d-0d04-0410-961f-
82ee72b054a4
ktkachov [Thu, 25 Jul 2013 16:33:27 +0000 (16:33 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201250
138bc75d-0d04-0410-961f-
82ee72b054a4
ktkachov [Thu, 25 Jul 2013 16:31:51 +0000 (16:31 +0000)]
2013-07-25 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/arm-fixed.md (ssmulsa3, usmulusa3):
Adjust for arm_restrict_it.
Remove trailing whitespace.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201249
138bc75d-0d04-0410-961f-
82ee72b054a4
danglin [Thu, 25 Jul 2013 15:53:51 +0000 (15:53 +0000)]
* config/pa/pa.c (pa_trampoline_init): Emit __enable_execute_stack
libcall if HAVE_ENABLE_EXECUTE_STACK is defined.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201248
138bc75d-0d04-0410-961f-
82ee72b054a4
danglin [Thu, 25 Jul 2013 15:26:31 +0000 (15:26 +0000)]
* config.gcc (hppa-*-openbsd*): Don't set tmake_file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201247
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Thu, 25 Jul 2013 15:04:03 +0000 (15:04 +0000)]
/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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201245
138bc75d-0d04-0410-961f-
82ee72b054a4
timshen [Thu, 25 Jul 2013 14:59:43 +0000 (14:59 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201244
138bc75d-0d04-0410-961f-
82ee72b054a4
vmakarov [Thu, 25 Jul 2013 14:58:21 +0000 (14:58 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201243
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Thu, 25 Jul 2013 13:24:58 +0000 (13:24 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201242
138bc75d-0d04-0410-961f-
82ee72b054a4
ramana [Thu, 25 Jul 2013 12:50:14 +0000 (12:50 +0000)]
Remove unnecessary space.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201241
138bc75d-0d04-0410-961f-
82ee72b054a4
ramana [Thu, 25 Jul 2013 09:40:11 +0000 (09:40 +0000)]
Fix PR target/57909.
2013-07-17 Yvan Roux <yvan.roux@linaro.org>
PR target/57909
* config/arm/arm.c (gen_movmem_ldrd_strd): Fix unaligned load/store
usage in HI mode.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201240
138bc75d-0d04-0410-961f-
82ee72b054a4
janus [Thu, 25 Jul 2013 08:26:36 +0000 (08:26 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201239
138bc75d-0d04-0410-961f-
82ee72b054a4
xguo [Thu, 25 Jul 2013 04:10:27 +0000 (04:10 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201237
138bc75d-0d04-0410-961f-
82ee72b054a4
wschmidt [Thu, 25 Jul 2013 01:24:14 +0000 (01:24 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201235
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Thu, 25 Jul 2013 00:46:46 +0000 (00:46 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201234
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Thu, 25 Jul 2013 00:16:50 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201233
138bc75d-0d04-0410-961f-
82ee72b054a4
dmalcolm [Thu, 25 Jul 2013 00:14:01 +0000 (00:14 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201230
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201226
138bc75d-0d04-0410-961f-
82ee72b054a4
amylaar [Wed, 24 Jul 2013 20:12:49 +0000 (20:12 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201225
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [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, recreate those fields with the first one with a non-zero
size.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201222
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201220
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Wed, 24 Jul 2013 16:53:17 +0000 (16:53 +0000)]
net: Only use GNU/Linux unix socket abstract paths on GNU/Linux.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201217
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Wed, 24 Jul 2013 15:42:06 +0000 (15:42 +0000)]
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*.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201215
138bc75d-0d04-0410-961f-
82ee72b054a4
timshen [Wed, 24 Jul 2013 14:39:54 +0000 (14:39 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201213
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201209
138bc75d-0d04-0410-961f-
82ee72b054a4
wschmidt [Wed, 24 Jul 2013 13:17:31 +0000 (13:17 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201208
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Wed, 24 Jul 2013 13:09:32 +0000 (13:09 +0000)]
net/http: Don't try to trace sendfile64 on alpha.
From Uros Bizjak.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201206
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Wed, 24 Jul 2013 08:37:37 +0000 (08:37 +0000)]
2013-07-24 Paolo Carlini <paolo.carlini@oracle.com>
Tweak last ChangeLog entry.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201202
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Wed, 24 Jul 2013 08:35:54 +0000 (08:35 +0000)]
/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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201201
138bc75d-0d04-0410-961f-
82ee72b054a4
eager [Wed, 24 Jul 2013 00:19:58 +0000 (00:19 +0000)]
Correct ChangeLog for 201185.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201200
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Wed, 24 Jul 2013 00:16:46 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201199
138bc75d-0d04-0410-961f-
82ee72b054a4
wschmidt [Tue, 23 Jul 2013 22:36:04 +0000 (22:36 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201195
138bc75d-0d04-0410-961f-
82ee72b054a4
sje [Tue, 23 Jul 2013 22:34:10 +0000 (22:34 +0000)]
2013-07-23 Steve Ellcey <sellcey@mips.com>
* config/mips/mips.c (mips_case_values_threshold): New.
(TARGET_CASE_VALUES_THRESHOLD): Define.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201194
138bc75d-0d04-0410-961f-
82ee72b054a4
wschmidt [Tue, 23 Jul 2013 22:30:58 +0000 (22:30 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201193
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Tue, 23 Jul 2013 21:23:27 +0000 (21:23 +0000)]
log/syslog: Restore interface to make this work on Solaris again.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201188
138bc75d-0d04-0410-961f-
82ee72b054a4
meissner [Tue, 23 Jul 2013 21:19:03 +0000 (21:19 +0000)]
[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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201187
138bc75d-0d04-0410-961f-
82ee72b054a4
eager [Tue, 23 Jul 2013 21:15:21 +0000 (21:15 +0000)]
* config/microblaze/microblaze.c (microblaze_expand_prologue):
Rename flag_stack_usage to flag_stack_usage_info.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201186
138bc75d-0d04-0410-961f-
82ee72b054a4
eager [Tue, 23 Jul 2013 21:09:50 +0000 (21:09 +0000)]
* config/microblaze/microblaze.c: Add microblaze_asm_output_mi_thunk
and define TARGET_ASM_OUTPUT_MI_THUNK and
TARGET_ASM_CAN_OUTPUT_MI_THUNK.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201185
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201183
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Tue, 23 Jul 2013 20:32:26 +0000 (20:32 +0000)]
runtime: Declare epoll_create1 if necessary.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201181
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [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/ .
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201179
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Tue, 23 Jul 2013 20:17:52 +0000 (20:17 +0000)]
* c-parser.c (struct c_generic_association): Fix typo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201178
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Tue, 23 Jul 2013 18:11:07 +0000 (18:11 +0000)]
* doc/invoke.texi (SPARC Options): Document new leon3 processor value.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201177
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Tue, 23 Jul 2013 16:14:13 +0000 (16:14 +0000)]
* 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).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201176
138bc75d-0d04-0410-961f-
82ee72b054a4
yufeng [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).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201175
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 23 Jul 2013 15:56:37 +0000 (15:56 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201174
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 23 Jul 2013 15:39:45 +0000 (15:39 +0000)]
2013-07-23 Nicklas Bo Jensen <nbjensen@gmail.com>
* doc/md.texi (Machine-Specific Peephole Optimizers): Fix a
typo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201173
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Tue, 23 Jul 2013 13:46:26 +0000 (13:46 +0000)]
* go-lang.c: Don't #include "except.h".
* Make-lang.in (go/go-lang.o): Don't depend on $(EXCEPT_H).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201171
138bc75d-0d04-0410-961f-
82ee72b054a4
yufeng [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201170
138bc75d-0d04-0410-961f-
82ee72b054a4
timshen [Tue, 23 Jul 2013 12:31:51 +0000 (12:31 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201169
138bc75d-0d04-0410-961f-
82ee72b054a4
yufeng [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201168
138bc75d-0d04-0410-961f-
82ee72b054a4
yufeng [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201167
138bc75d-0d04-0410-961f-
82ee72b054a4
yufeng [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'.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201166
138bc75d-0d04-0410-961f-
82ee72b054a4
yufeng [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201165
138bc75d-0d04-0410-961f-
82ee72b054a4
yufeng [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201164
138bc75d-0d04-0410-961f-
82ee72b054a4
gjl [Tue, 23 Jul 2013 11:45:57 +0000 (11:45 +0000)]
* config/avr/avr.md: Explain asm print modifier 'r' for REG.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201163
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Tue, 23 Jul 2013 11:39:41 +0000 (11:39 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201162
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Tue, 23 Jul 2013 09:45:30 +0000 (09:45 +0000)]
* config/fpu-387.h (get_fpu_rounding_mode): Read rounding mode
from SSE mxcsr register on x86_64.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201161
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Tue, 23 Jul 2013 09:39:01 +0000 (09:39 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201160
138bc75d-0d04-0410-961f-
82ee72b054a4
amonakov [Tue, 23 Jul 2013 09:17:10 +0000 (09:17 +0000)]
* elf.c (elf_syminfo): Loop over the elf_syminfo_data chain.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201159
138bc75d-0d04-0410-961f-
82ee72b054a4
amonakov [Tue, 23 Jul 2013 09:12:00 +0000 (09:12 +0000)]
* elf.c (backtrace_initialize): Pass elf_fileline_fn to
dl_iterate_phdr callbacks.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201158
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [Tue, 23 Jul 2013 07:20:52 +0000 (07:20 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201156
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Tue, 23 Jul 2013 04:42:09 +0000 (04:42 +0000)]
runtime: Ignore SIGPROF if not on a Go thread.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201154
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Tue, 23 Jul 2013 01:54:24 +0000 (01:54 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201153
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Tue, 23 Jul 2013 00:16:44 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201152
138bc75d-0d04-0410-961f-
82ee72b054a4
wschmidt [Mon, 22 Jul 2013 23:08:44 +0000 (23:08 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201149
138bc75d-0d04-0410-961f-
82ee72b054a4