gcc.git
10 years agore PR rtl-optimization/57637 (Miscompare on 178.galgel in SPEC2000 on arm)
Zhenqiang Chen [Tue, 30 Jul 2013 06:53:31 +0000 (06:53 +0000)]
re PR rtl-optimization/57637 (Miscompare on 178.galgel in SPEC2000 on arm)

gcc/
2013-07-30  Zhenqiang Chen  <zhenqiang.chen@linaro.org>

PR rtl-optimization/57637
* function.c (move_insn_for_shrink_wrap): Also check the
GEN set of the LIVE problem for the liveness analysis
if it exists, otherwise give up.

gcc/testsuite/
2013-07-30  Zhenqiang Chen  <zhenqiang.chen@linaro.org>

* gcc.target/arm/pr57637.c: New testcase.

From-SVN: r201326

10 years agore PR tree-optimization/57993 (ICE: verify_ssa failed (definition in block n does...
Bill Schmidt [Tue, 30 Jul 2013 01:01:35 +0000 (01:01 +0000)]
re PR tree-optimization/57993 (ICE: verify_ssa failed (definition in block n does not dominate use in block m))

gcc:

2013-07-29  Bill Schmidt  <wschmidt@vnet.linux.ibm.com>

PR tree-optimization/57993
* gimple-ssa-strength-reduction.c (replace_mult_candidate): Record
replaced statement in the candidate table.
(phi_add_costs): Return infinite cost when the hidden basis does
not dominate all phis on which the candidate is dependent.
(replace_one_candidate): Record replaced statement in the
candidate table.

gcc/testsuite:

2013-07-29  Bill Schmidt  <wschmidt@vnet.linux.ibm.com>

PR tree-optimization/57993
* gcc.dg/torture/pr57993.c: New test.

From-SVN: r201325

10 years agoDaily bump.
GCC Administrator [Tue, 30 Jul 2013 00:16:25 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201324

10 years agore PR rtl-optimization/58021 (MODE_EXIT switches at NOTE_INSN_DELETED)
Joern Rennecke [Mon, 29 Jul 2013 22:45:38 +0000 (22:45 +0000)]
re PR rtl-optimization/58021 (MODE_EXIT switches at NOTE_INSN_DELETED)

        PR rtl-optimization/58021
        * mode-switching.c (create_pre_exit): Always split off preceding
        insns if we are not at the basic block head.

From-SVN: r201321

10 years ago* gcc.dg/tree-ssa/pr44258.c: Disable scan test for Epiphany.
Joern Rennecke [Mon, 29 Jul 2013 20:46:29 +0000 (20:46 +0000)]
* gcc.dg/tree-ssa/pr44258.c: Disable scan test for Epiphany.

From-SVN: r201320

10 years agoepiphany.md (*isub_i+2): New peephole.
Joern Rennecke [Mon, 29 Jul 2013 20:34:29 +0000 (20:34 +0000)]
epiphany.md (*isub_i+2): New peephole.

* config/epiphany/epiphany.md (*isub_i+2): New peephole.
(ashlv2si3): New expander.
(*ashlv2si3_i): New define_insn_and_split.
* predicates.md (float_operation): Allow patterns with three
basic sub-patterns.

From-SVN: r201319

10 years agore PR c++/57948 (internal compiler error: in initialize_reference, at cp/call.c:9285)
Paolo Carlini [Mon, 29 Jul 2013 20:12:20 +0000 (20:12 +0000)]
re PR c++/57948 (internal compiler error: in initialize_reference, at cp/call.c:9285)

/cp
2013-07-29  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57948
* call.c (initialize_reference): Don't crash when reference_binding
returns a conv with conv->kind == ck_ambig.

/testsuite
2013-07-29  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57948
* g++.dg/conversion/ambig2.C: New.

From-SVN: r201318

10 years agomangle.c (write_name): Check for null context.
Jason Merrill [Mon, 29 Jul 2013 19:40:13 +0000 (15:40 -0400)]
mangle.c (write_name): Check for null context.

* mangle.c (write_name): Check for null context.
(write_unscoped_name): Allow PARM_DECL context.

From-SVN: r201317

10 years agomatch.c (gfc_match_call): Exit loop after setting i.
Po-Chun Chang [Mon, 29 Jul 2013 19:08:03 +0000 (13:08 -0600)]
match.c (gfc_match_call): Exit loop after setting i.

       * match.c (gfc_match_call): Exit loop after setting i.

        * resolve.c (resolve_variable): Exit loop after setting seen.

        * expr.c (gfc_check_pointer_assign): Exit loop after setting
        * warn.

        * trans-array.c (set_loop_bounds): Exit loop after setting
        nonoptional_arr.

        * trans-io.c (gfc_trans_transfer): Exit loop after setting
        * seen_vector.

From-SVN: r201316

10 years agoatomic (compare_exchange_weak, [...]): Add call to __cmpexch_failure_order.
Nathan Froyd [Mon, 29 Jul 2013 17:13:05 +0000 (17:13 +0000)]
atomic (compare_exchange_weak, [...]): Add call to __cmpexch_failure_order.

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.

From-SVN: r201315

10 years agolinux.h (GLIBC_DYNAMIC_LINKER): Handle `-mnan=2008'.
Maciej W. Rozycki [Mon, 29 Jul 2013 14:37:30 +0000 (14:37 +0000)]
linux.h (GLIBC_DYNAMIC_LINKER): Handle `-mnan=2008'.

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='.

From-SVN: r201313

10 years agore PR target/57954 (AVX missing vxorps (zeroing) before vcvtsi2s %edx, slow down...
Uros Bizjak [Mon, 29 Jul 2013 11:17:51 +0000 (13:17 +0200)]
re PR target/57954 (AVX missing vxorps (zeroing) before vcvtsi2s %edx, slow down AVX code)

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.

From-SVN: r201308

10 years agoFix incorrect changelog entry.
Ramana Radhakrishnan [Mon, 29 Jul 2013 10:36:11 +0000 (10:36 +0000)]
Fix incorrect changelog entry.

From-SVN: r201307

10 years ago2013-07-29 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
Andreas 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.

From-SVN: r201301

10 years agos390.md ("movcc"): Swap load and store instructions.
Dominik Vogt [Mon, 29 Jul 2013 08:02:21 +0000 (08:02 +0000)]
s390.md ("movcc"): Swap load and store instructions.

2013-07-29  Dominik Vogt  <vogt@linux.vnet.ibm.com>

* config/s390/s390.md ("movcc"): Swap load and store instructions.

From-SVN: r201300

10 years agotarget-supports.exp (check_effective_target_non_bionic): New effective-target test.
Alexander Ivchenko [Mon, 29 Jul 2013 06:05:34 +0000 (06:05 +0000)]
target-supports.exp (check_effective_target_non_bionic): New effective-target test.

        * 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.

Co-Authored-By: Maxim Kuvyrkov <maxim@kugelworks.com>
From-SVN: r201298

10 years agoDaily bump.
GCC Administrator [Mon, 29 Jul 2013 00:16:42 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201297

10 years agore PR fortran/58009 (Elements with same value in vector subscript in variable definit...
Thomas Koenig [Sun, 28 Jul 2013 21:10:23 +0000 (21:10 +0000)]
re PR fortran/58009 (Elements with same value in vector subscript in variable definition context)

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.

From-SVN: r201294

10 years agoFix incorrect ChangeLog entry.
Tim Shen [Sun, 28 Jul 2013 10:23:43 +0000 (10:23 +0000)]
Fix incorrect ChangeLog entry.

From-SVN: r201292

10 years agoDaily bump.
GCC Administrator [Sun, 28 Jul 2013 00:16:47 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201290

10 years agoepiphany.c (epiphany_compute_frame_size): Also reserve space for saving UNKNOWN_REGNU...
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

10 years agore PR fortran/57991 (Enhance "Same actual argument associated" warning (-Waliasing))
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

10 years agore PR fortran/57285 ([OOP] ICE on invalid: "gfc_array_dimen_size(): Bad dimension...
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

10 years agopr57705.c: Adjust for a !vect_pack_trunc target.
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

10 years agoDaily bump.
GCC Administrator [Sat, 27 Jul 2013 00:16:44 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201279

10 years agodwarf2out.c (die_checksum_ordered): Don't include template instantiations in signature.
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

10 years agoCorrect ChangeLog entry
William Schmidt [Fri, 26 Jul 2013 19:38:14 +0000 (19:38 +0000)]
Correct ChangeLog entry

From-SVN: r201274

10 years agopr37868.c: Disable for epiphany.
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

10 years agopr27095.c: For Epiphany, add -mshort-calls.
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

10 years ago* gcc.c-torture/execute/builtins/stpcpy-chk.x: New file.
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

10 years agoSkip tests that make assumptions about struct layout that don't hold on epiphany.
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

10 years agominmax_minus.c: Scan
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

10 years ago* gcc.dg/guality/guality.exp: Skip on AIX.
David Edelsohn [Fri, 26 Jul 2013 11:50:39 +0000 (11:50 +0000)]
* gcc.dg/guality/guality.exp: Skip on AIX.

From-SVN: r201266

10 years agoppc-vector-memcpy.c: Test use of VMX for memcpy not initializers.
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

10 years agoAArch64 support for NEG in vector registers for DI and SI mode (part 2)
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

10 years agore PR c++/57101 (-fcompare-debug failure with <type error>)
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

10 years agoAArch64 support for NEG in vector registers for DI and SI mode
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

10 years agocombine.c (simplify_comparison): Re-canonicalize operands where appropriate.
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

10 years agoDaily bump.
GCC Administrator [Fri, 26 Jul 2013 00:16:36 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201259

10 years agodwarf2out.c (size_of_pubnames): Move code to...
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

10 years agore PR fortran/57966 ([OOP] Using a TBP to specify the shape of a dummy argument)
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

10 years agocomplex (pow(const complex<>&, int)): Enable in C++11 mode too.
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

10 years agore PR target/38836 (Documentation for x86 builtins is outdated)
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

10 years agocgraph.c (release_function_body): Break out from ...
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

10 years agoarm.md (arm_addsi3, [...]): Correct output template.
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

10 years agoarm-fixed.md (ssmulsa3, usmulusa3): Adjust for arm_restrict_it.
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

10 years agopa.c (pa_trampoline_init): Emit __enable_execute_stack libcall if HAVE_ENABLE_EXECUTE...
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

10 years agoconfig.gcc (hppa-*-openbsd*): Don't set tmake_file.
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

10 years agore PR c++/57981 (ICE in this code)
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

10 years agoAdd documents and comments.
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

10 years agore PR rtl-optimization/57960 (S/390: LRA ICE building glibc)
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

10 years agolto-symtab.c (lto_cgraph_replace_node): Release function body.
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

10 years agoRemove unnecessary space.
Ramana Radhakrishnan [Thu, 25 Jul 2013 12:50:14 +0000 (12:50 +0000)]
Remove unnecessary space.

From-SVN: r201241

10 years agoFix PR target/57731 PR target/57837
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

10 years agore PR fortran/57639 ([OOP] ICE with polymorphism (and illegal code))
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

10 years agoarm.c (thumb1_size_rtx_costs): Assign proper cost for shift_add/shift_sub0/shift_sub1...
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

10 years agoaltivec.md (altivec_vpkpx): Handle little endian.
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

10 years agore PR libstdc++/57976 (Missing time_get<>::get() functions)
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

10 years agoDaily bump.
GCC Administrator [Thu, 25 Jul 2013 00:16:50 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201233

10 years agoIntroduce context class.
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

10 years agoruntime: Handle allocating memory in cgo/SWIG function.
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

10 years agore PR rtl-optimization/57968 (MODE_EXIT switches inserted too early)
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

10 years agogo-gcc.cc (Gcc_backend::non_zero_size_type): If a struct has a fields...
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

10 years agoruntime: Check _end rather than end to find end of program.
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

10 years agonet: Only use GNU/Linux unix socket abstract paths on GNU/Linux.
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

10 years agorandom.h (random_device): Avoid using the FILE type.
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

10 years agoReimplment matcher using Depth-first search(backtracking).
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

10 years agoruntime: Move new 1.1.1 functions from thread-linux.c to runtime.c.
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

10 years agovector.md (vec_realign_load_<mode>): Reorder input operands to vperm for little endian.
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

10 years agonet/http: Don't try to trace sendfile64 on alpha.
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

10 years ago2013-07-24 Paolo Carlini <paolo.carlini@oracle.com>
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

10 years agore PR c++/57942 (g++-4.8.1 tries to instantiate wrong constructor)
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

10 years agoCorrect ChangeLog for 201185.
Michael Eager [Wed, 24 Jul 2013 00:19:58 +0000 (00:19 +0000)]
Correct ChangeLog for 201185.

From-SVN: r201200

10 years agoDaily bump.
GCC Administrator [Wed, 24 Jul 2013 00:16:46 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r201199

10 years agors6000.c (altivec_expand_vec_perm_const): Reverse two operands for little-endian.
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

10 years agomips.c (mips_case_values_threshold): New.
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

10 years agors6000.c (altivec_expand_vec_perm_const): Correct selection of field for vector splat...
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

10 years agolog/syslog: Restore interface to make this work on Solaris again.
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

10 years agovector.md (xor<mode>3): Move 128-bit boolean expanders to rs6000.md.
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

10 years agomicroblaze.c (microblaze_expand_prologue): Rename flag_stack_usage to flag_stack_usag...
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

10 years agomicroblaze.c: Add microblaze_asm_output_mi_thunk and define TARGET_ASM_OUTPUT_MI_THUN...
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

10 years agonet: Remove Solaris-specific version of listenerSockaddr.
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

10 years agoruntime: Declare epoll_create1 if necessary.
Ian Lance Taylor [Tue, 23 Jul 2013 20:32:26 +0000 (20:32 +0000)]
runtime: Declare epoll_create1 if necessary.

From-SVN: r201181

10 years agoruntime: Support cgo callbacks from threads started by C.
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

10 years ago* c-parser.c (struct c_generic_association): Fix typo.
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

10 years ago* doc/invoke.texi (SPARC Options): Document new leon3 processor value.
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

10 years agogo-backend.c: Don't #include "rtl.h".
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

10 years ago[AArch64, ILP32] Add change to gcc.target/aarch64/vect_smlal_1.c that was missed...
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

10 years agoreload.c (find_reloads): Exit loop once we find this operand cannot be reloaded someh...
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

10 years agomd.texi (Machine-Specific Peephole Optimizers): Fix a typo.
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

10 years agogo-lang.c: Don't #include "except.h".
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

10 years ago[AArch64, ILP32] 6/6 Add support for "wsp" register.
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

10 years agoImplement regex_iterator and regex_token_iterator.
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

10 years ago[AArch64, ILP32] 5/6 Pad pointer-typed stack argument downward in ILP32.
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

10 years ago[AArch64, ILP32] 4/6 Define _ILP32 and __ILP32__.
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

10 years ago[AArch64, ILP32] 3/6 Change tests to be ILP32-friendly.
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

10 years ago[AArch64, ILP32] 2/6 More backend changes and support for small absolute and
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

10 years ago[AArch64, ILP32] 1/6 Initial support - configury changes
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

10 years agoavr.md: Explain asm print modifier 'r' for REG.
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

10 years agodecl.c: Fix comment typos.
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