platform/upstream/linaro-gcc.git
11 years ago * gcc/target.def (TARGET_HAS_IFUNC_P): New target hook.
kyukhin [Wed, 27 Mar 2013 09:55:19 +0000 (09:55 +0000)]
    * gcc/target.def (TARGET_HAS_IFUNC_P): New target hook.
        * gcc/doc/tm.texi.in (TARGET_HAS_IFUNC_P): New.
        * gcc/doc/tm.texi: Regenerate.
        * gcc/targhooks.h (default_has_ifunc_p): New.
        * gcc/targhooks.c (default_has_ifunc_p): Ditto.
        * gcc/config/linux-protos.h: New file.
        * gcc/config/linux-android.h (TARGET_HAS_IFUNC_P): Using version of
        this hook for linux which disables support of indirect functions in
        android.
        * gcc/config/linux-android.c: New file.
        * gcc/config/t-linux-android.c: Ditto.
        * gcc/config.gcc: Added new object file linux-android.o.
        * gcc/config/i386/i386.c (ix86_get_function_versions_dispatcher):
        Using TARGET_HAS_IFUNC hook instead of HAVE_GNU_INDIRECT_FUNCTION.
        * gcc/varasm.c (do_assemble_alias): Likewise.
        * configure.ac: Define HAVE_GNU_INDIRECT_FUNCTION as zero if the target
        doesn't support indirect functions.
        * configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197156 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR target/56102
amker [Wed, 27 Mar 2013 08:16:54 +0000 (08:16 +0000)]
PR target/56102
* config/arm/arm.c (thumb1_rtx_costs, thumb1_size_rtx_costs): Fix
rtx costs for SET/ASHIFT/ASHIFTRT/LSHIFTRT/ROTATERT patterns with
mult-word mode.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197155 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoI've committed the attached patch.
krebbel [Wed, 27 Mar 2013 07:46:19 +0000 (07:46 +0000)]
I've committed the attached patch.

2013-03-27  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/s390.h (TARGET_FLT_EVAL_METHOD): Define.

---
 gcc/config/s390/s390.h |    5 +++++
 1 file changed, 5 insertions(+)

Index: gcc/config/s390/s390.h
===================================================================
*** gcc/config/s390/s390.h.orig
--- gcc/config/s390/s390.h
*************** enum processor_flags
*** 164,169 ****
--- 164,174 ----
  #define S390_TDC_INFINITY (S390_TDC_POSITIVE_INFINITY \
     | S390_TDC_NEGATIVE_INFINITY )

+ /* This is used by float.h to define the float_t and double_t data
+    types.  For historical reasons both are double on s390 what cannot
+    be changed anymore.  */
+ #define TARGET_FLT_EVAL_METHOD 1
+
  /* Target machine storage layout.  */

  /* Everything is big-endian.  */

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197154 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-03-27 Terry Guo <terry.guo@arm.com>
xguo [Wed, 27 Mar 2013 07:37:32 +0000 (07:37 +0000)]
2013-03-27  Terry Guo  <terry.guo@arm.com>

* config/arm/arm-cores.def: Added core cortex-r7.
* config/arm/arm-tune.md: Regenerated.
* config/arm/arm-tables.opt: Regenerated.
* doc/invoke.texi: Added entry for core cortex-r7.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197153 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoFix typo in ChangeLog.
walt [Wed, 27 Mar 2013 06:53:21 +0000 (06:53 +0000)]
Fix typo in ChangeLog.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197152 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/tilegx/tilegx.c (tilegx_expand_prologue): Avoid
walt [Wed, 27 Mar 2013 06:18:49 +0000 (06:18 +0000)]
* config/tilegx/tilegx.c (tilegx_expand_prologue): Avoid
double-decrement of next_scratch_regno.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197139 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/tilegx/tilegx.md (insn_v1mulu): Fix constraints on
walt [Wed, 27 Mar 2013 06:17:18 +0000 (06:17 +0000)]
* config/tilegx/tilegx.md (insn_v1mulu): Fix constraints on
input operands.
(insn_v1mulus): Ditto.
(insn_v2muls): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197138 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/tilegx/tilegx.h (ASM_OUTPUT_ADDR_VEC_ELT): Delete
walt [Wed, 27 Mar 2013 06:13:11 +0000 (06:13 +0000)]
* config/tilegx/tilegx.h (ASM_OUTPUT_ADDR_VEC_ELT): Delete
extra tab.
(ASM_OUTPUT_ADDR_DIFF_ELT): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197137 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/tilegx/tilegx.md (*sibcall_insn): Fix type atribute
walt [Wed, 27 Mar 2013 06:11:35 +0000 (06:11 +0000)]
* config/tilegx/tilegx.md (*sibcall_insn): Fix type atribute
for jr.
(*sibcall_value): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197136 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/tilegx/tilegx.md (insn_mnz_<mode>): Replaced by ...
walt [Wed, 27 Mar 2013 06:08:01 +0000 (06:08 +0000)]
* config/tilegx/tilegx.md (insn_mnz_<mode>): Replaced by ...
(insn_mnz_v8qi): ... this ...
(insn_mnz_v4hi): ... and this.  Replace (const_int 0) with the
vector equivalent.
(insn_v<n>mnz): Replaced by ...
(insn_v1mnz): ... this ...
(insn_v2mnz): ... and this.  Replace (const_int 0) with the vector
equivalent.
(insn_mz_<mode>): Replaced by ...
(insn_mz_v8qi): ... this ...
(insn_mz_v4hi): ... and this.  Replace (const_int 0) with the
vector equivalent.
(insn_v<n>mz): Replaced by ...
(insn_v1mz): ... this ...
(insn_v2mz): ... and this.  Replace (const_int 0) with the vector
equivalent.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197135 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * call.c (build_new_method_call_1): Use INDIRECT_REF_P.
gdr [Wed, 27 Mar 2013 03:22:31 +0000 (03:22 +0000)]
* call.c (build_new_method_call_1): Use INDIRECT_REF_P.
* cvt.c (convert_to_void): Likewise.
* error.c (dump_expr): Likewise.
* mangle.c (write_expression): Likewise.
* parser.c (cp_parser_template_argument): Likewise.
* pt.c (convert_nontype_argument): Likewise.
(tsubst_copy_and_build): Likewise.
* rtti.c (build_typeid): Likewise.
* semantics.c (finish_call_expr): Likewise.
(finish_decltype_type): Likewise.
(build_data_member_initialization): Likewise.
* tree.c (is_dummy_object): Likewise.
* typeck.c (decay_conversion): Likewise.
(build_class_member_access_expr): Likewise.
(cp_build_addr_expr_1): Likewise.
(unary_complex_lvalue): Likewise.
(check_return_expr): Likewise.
* typeck2.c (cxx_readonly_error): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197132 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR c++/52597
jason [Wed, 27 Mar 2013 03:01:41 +0000 (03:01 +0000)]
PR c++/52597
* typeck.c (invalid_nonstatic_memfn_p): Use get_first_fn.  Take tree.
* semantics.c (finish_decltype_type): Check it before type_unknown_p.
* cp-tree.h: Adjust prototype.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197131 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR c++/45282
jason [Wed, 27 Mar 2013 03:01:34 +0000 (03:01 +0000)]
PR c++/45282
* typeck2.c (build_m_component_ref): Handle prvalue object.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197130 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Wed, 27 Mar 2013 00:16:48 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197129 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * gcc.c-torture/execute/20011008-3.c: Cap VLEN with STACK_SIZE too.
ebotcazou [Tue, 26 Mar 2013 22:32:12 +0000 (22:32 +0000)]
* gcc.c-torture/execute/20011008-3.c: Cap VLEN with STACK_SIZE too.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197125 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoPR 25708 Use a temporary buffer when parsing module files.
jb [Tue, 26 Mar 2013 22:08:17 +0000 (22:08 +0000)]
PR 25708 Use a temporary buffer when parsing module files.

2013-03-27  Janne Blomqvist  <jb@gcc.gnu.org>

PR fortran/25708
        * module.c (module_locus): Use long for position.
        (module_content): New variable.
        (module_pos): Likewise.
        (prev_character): Remove.
        (bad_module): Free data instead of closing mod file.
        (set_module_locus): Use module_pos.
        (get_module_locus): Likewise.
        (module_char): use buffer rather than stdio file.
        (module_unget_char): Likewise.
        (read_module_to_tmpbuf): New function.
        (gfc_use_module): Call read_module_to_tmpbuf.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197124 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * doc/invoke.texi (SPARC options): Remove -mlittle-endian.
ebotcazou [Tue, 26 Mar 2013 22:04:26 +0000 (22:04 +0000)]
* doc/invoke.texi (SPARC options): Remove -mlittle-endian.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197120 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * cp-gimplify.c (cp_genericize_r): Use VAR_OR_FUNCTION_DECL_P.
gdr [Tue, 26 Mar 2013 20:05:55 +0000 (20:05 +0000)]
* cp-gimplify.c (cp_genericize_r): Use VAR_OR_FUNCTION_DECL_P.
* decl.c (duplicate_decls): Likewise.
(cp_finish_decl): Likewise.
(check_class_member_definition_namespace): Likewise.
* decl2.c (grokfield): Likewise.
(decl_needed_p): Likewise.
(import_export_decl): Likewise.
(mark_used): Likewise.
* name-lookup.c (pushdecl_maybe_friend_1): Likewise.
* pt.c (push_access_scope): Likewise.
(instantiate_decl): Likewise.
* ptree.c (cxx_print_decl): Likewise.
* repo.c (repo_emit_p): Likewise.
* semantics.c (note_decl_for_pch): Likewise.
* tree.c (decl_linkage): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197119 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * de.po, sv.po: Update.
jsm28 [Tue, 26 Mar 2013 17:11:44 +0000 (17:11 +0000)]
* de.po, sv.po: Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197117 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago/cp
paolo [Tue, 26 Mar 2013 16:49:49 +0000 (16:49 +0000)]
/cp
2013-03-26  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/55951
* decl.c (check_array_designated_initializer): Handle CONST_DECL
as ce->index.

/testsuite
2013-03-26  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/55951
* g++.dg/ext/desig5.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197116 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/arm/arm.c (arm_print_operand: case 'w'): Use fputs rather
roland [Tue, 26 Mar 2013 16:43:09 +0000 (16:43 +0000)]
* config/arm/arm.c (arm_print_operand: case 'w'): Use fputs rather
than fprintf with a non-constant, non-format string.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197115 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/i386/i386.md (*cmpqi_ext_1): Merge with *cmpqi_ext_1_rex64
uros [Tue, 26 Mar 2013 16:24:48 +0000 (16:24 +0000)]
* config/i386/i386.md (*cmpqi_ext_1): Merge with *cmpqi_ext_1_rex64
using nox64 isa attribute.  Use nonimmediate_x86nomem_operand as
operand 0 predicate.
(*cmpqi_ext_3): Merge with *cmpqi_ext_3_rex64 using nox64 isa
attribute.  Use general_x64nomem_operand as operand 1 predicate.
(*movqi_extv_1): Merge with *movqi_extv_1_rex64 using nox64 isa
attribute.  Use nonimmediate_x64nomem_operand as operand 0 predicate.
(*movqi_extzv_2): Merge with *movqi_extzv_2_rex64 using nox64 isa
attribute.  Use nonimmediate_x64nomem_operand as operand 0 predicate.
(mov<mode>_insv_1): Remove expander.  Merge insn with
movsi_insv_1 using SWI48 mode iterator and nox64 isa attribute.
Use general_x64nomem_operand as operand 1 predicate.
(addqi_ext_1): Merge with *addqi_ext_1_rex64 using nox64 isa attribute.
(*testqi_ext_1): Merge with *testqi_ext_1_rex64 using nox64 isa
attribute.  Use nonimmediate_x64nomem_operand as operand 1 predicate.
(*andqi_ext_1): Merge with *andqi_ext_1_rex64 using nox64 isa
attribute.  Use nonimmediate_x64nomem_operand as operand 2 predicate.
(*<code>qi_ext_1): Merge with *<code>qi_ext_1_rex64 using nox64 isa
attribute.  Use nonimmediate_x64nomem_operand as operand 1 predicate.
(*xorqi_cc_ext_1): Merge with *xorqi_cc_ext_1_rex64 using nox64
isa attribute.  Use general_x64nomem_operand as operand 2 predicate.
* config/i386/predicates.md (nonimmediate_x64nomem_operand): New.
(general_x64nomem_operand): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197114 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoFix date.
joel [Tue, 26 Mar 2013 15:48:39 +0000 (15:48 +0000)]
Fix date.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197112 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-01-29 Sebastian Huber <sebastian.huber@embedded-brains.de>
joel [Tue, 26 Mar 2013 15:47:12 +0000 (15:47 +0000)]
2013-01-29  Sebastian Huber  <sebastian.huber@embedded-brains.de>

* config/rtems.opt: Add -pthread option.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197111 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-03-26 Richard Biener <rguenther@suse.de>
rguenth [Tue, 26 Mar 2013 15:20:38 +0000 (15:20 +0000)]
2013-03-26  Richard Biener  <rguenther@suse.de>

* alias.c (find_base_term): Avoid redundant and not used
recursion.
(base_alias_check): Get the initial base term from the
caller.
(true_dependence_1): Compute and pass base terms to base_alias_check.
(write_dependence_p): Likewise.
(may_alias_p): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197110 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-03-26 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 26 Mar 2013 14:51:56 +0000 (14:51 +0000)]
2013-03-26  Tobias Burnus  <burnus@net-b.de>

        PR fortran/56649
        * simplify.c (gfc_simplify_merge): Simplify more.

2013-03-26  Tobias Burnus  <burnus@net-b.de>

        PR fortran/56649
        * gfortran.dg/merge_init_expr_2.f90: New.
        * gfortran.dg/merge_char_1.f90: Modify test to
        stay a run-time test.
        * gfortran.dg/merge_char_3.f90: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197109 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/aarch64/aarch64.c (aarch64_classify_address): Support
sofiane [Tue, 26 Mar 2013 14:41:11 +0000 (14:41 +0000)]
* config/aarch64/aarch64.c (aarch64_classify_address): Support
PC-relative load in SI modes and above only.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197107 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoFor Xinyu Qi - Fix define_constants for WCGR.
ramana [Tue, 26 Mar 2013 14:01:24 +0000 (14:01 +0000)]
For Xinyu Qi - Fix define_constants for WCGR.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197104 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/i386/i386.md (*movdfcc_1): Merge with *movdfcc_1_rex64.
uros [Tue, 26 Mar 2013 12:37:46 +0000 (12:37 +0000)]
* config/i386/i386.md (*movdfcc_1): Merge with *movdfcc_1_rex64.
Use x64 and nox64 isa attributes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197101 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago/cp
paolo [Tue, 26 Mar 2013 10:23:59 +0000 (10:23 +0000)]
/cp
2013-03-26  Paolo Carlini  <paolo.carlini@oracle.com>

* decl.c (grokfndecl): Handle separately <inline> and <constexpr>
error messages.

* decl.c (grokdeclarator): Declare typedef_p and use it everywhere.

/testsuite
2013-03-26  Paolo Carlini  <paolo.carlini@oracle.com>

* g++.dg/cpp0x/constexpr-friend-2.C: New.
* g++.dg/cpp0x/constexpr-main.C: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197097 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-03-26 Richard Biener <rguenther@suse.de>
rguenth [Tue, 26 Mar 2013 09:14:59 +0000 (09:14 +0000)]
2013-03-26  Richard Biener  <rguenther@suse.de>

* emit-rtl.c (set_mem_attributes_minus_bitpos): Remove
alignment computations and rely on get_object_alignment_1
for the !TYPE_P case.
Commonize DECL/COMPONENT_REF handling in the ARRAY_REF path.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197095 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/tilegx/tilegx.h (PROFILE_BEFORE_PROLOGUE): Define.
walt [Tue, 26 Mar 2013 05:02:28 +0000 (05:02 +0000)]
* config/tilegx/tilegx.h (PROFILE_BEFORE_PROLOGUE): Define.
* config/tilegx/tilepro.h (PROFILE_BEFORE_PROLOGUE): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197084 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/tilegx/t-crtstuff: Add -fno-asynchronous-unwind-tables
walt [Tue, 26 Mar 2013 04:34:45 +0000 (04:34 +0000)]
* config/tilegx/t-crtstuff: Add -fno-asynchronous-unwind-tables
-mcmodel=large to CRTSTUFF_T_CFLAGS_S variable.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197083 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * tree-ssa-dom.c (record_equivalences_from_incoming_edge): Add missing
law [Tue, 26 Mar 2013 04:00:20 +0000 (04:00 +0000)]
    * tree-ssa-dom.c (record_equivalences_from_incoming_edge): Add missing
        check for INTEGRAL_TYPE_P that was missing due to checking in wrong
        version of prior patch.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197082 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/tilegx/tilegx-builtins.h (enum tilegx_builtin): Add
walt [Tue, 26 Mar 2013 00:54:47 +0000 (00:54 +0000)]
* config/tilegx/tilegx-builtins.h (enum tilegx_builtin): Add
TILEGX_INSN_SHUFFLEBYTES1.
* config/tilegx/tilegx.c (tilegx_builtin_info): Add entry for
shufflebytes1.
(tilegx_builtins): Ditto.
* config/tilegx/tilegx.md (insn_shufflebytes1): New pattern.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197080 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-03-25 Walter Lee <walt@tilera.com>
walt [Tue, 26 Mar 2013 00:46:35 +0000 (00:46 +0000)]
2013-03-25  Walter Lee  <walt@tilera.com>

* config/tilegx/tilegx.md (floatsisf2): New pattern.
        (floatunssisf2): New pattern.
        (floatsidf2): New pattern.
        (floatunssidf2): New pattern.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197079 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Tue, 26 Mar 2013 00:16:17 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197078 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/tilegx/tilegx.c (expand_set_cint64_one_inst): Inline
walt [Mon, 25 Mar 2013 23:59:38 +0000 (23:59 +0000)]
   * config/tilegx/tilegx.c (expand_set_cint64_one_inst): Inline
       tests for constraint J, K, N, P.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197074 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoSwitch eh data to always use pc relative/indirect encoding, to avoid
walt [Mon, 25 Mar 2013 23:50:52 +0000 (23:50 +0000)]
Switch eh data to always use pc relative/indirect encoding, to avoid
relocations of unaligned words.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197073 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-03-25 Steve Ellcey <sellcey@mips.com>
sje [Mon, 25 Mar 2013 23:12:01 +0000 (23:12 +0000)]
2013-03-25  Steve Ellcey  <sellcey@mips.com>

* config/mips/mmips-cpus.def (74kc, 74kf2_1, 74kf, 74kf, 74kf1_1,
74kfx, 74kx, 74kf3_2): Add PTF_AVOID_IMADD.
* config/mips/mips.c (mips_option_override): Set IMADD default.
* config/mips/mips.h (PTF_AVOID_IMADD): New.
(ISA_HAS_MADD_MSUB): Remove MIPS16 check.
(GENERATE_MADD_MSUB): Remove TUNE_74K check, add MIPS16 check.
* config/mips/mips.md (mimadd): New flag for integer madd/msub.
* doc/invoke.texi (-mimadd/-mno-imadd): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197072 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR c++/56699
jason [Mon, 25 Mar 2013 22:06:36 +0000 (22:06 +0000)]
PR c++/56699
* semantics.c (maybe_resolve_dummy): Make sure that the enclosing
class is derived from the type of the object.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197069 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR c++/56692
jason [Mon, 25 Mar 2013 22:06:27 +0000 (22:06 +0000)]
PR c++/56692
* g++.dg/cpp0x/lambda/lambda-this15.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197068 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR c++/52014
jason [Mon, 25 Mar 2013 20:35:43 +0000 (20:35 +0000)]
PR c++/52014
* semantics.c (lambda_expr_this_capture): Don't capture 'this' in
unevaluated context.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197063 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago/cp
paolo [Mon, 25 Mar 2013 20:19:10 +0000 (20:19 +0000)]
/cp
2013-03-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/56722
* decl.c (cp_finish_decl): Check DECL_LANG_SPECIFIC before
DECL_TEMPLATE_INSTANTIATION.

/testsuite
2013-03-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/56722
* g++.dg/cpp0x/range-for23.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197062 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-03-25 Tilo Schwarz <tilo@tilo-schwarz.de>
tiloschwarz [Mon, 25 Mar 2013 20:11:20 +0000 (20:11 +0000)]
2013-03-25  Tilo Schwarz  <tilo@tilo-schwarz.de>

        PR libfortran/52512
        * io/list_read.c (nml_parse_qualifier): To check for a derived type
        don't use the namelist head element type but the current element type.
        (nml_get_obj_data): Add current namelist element type to
        nml_parse_qualifier call.

2013-03-25  Tilo Schwarz  <tilo@tilo-schwarz.de>

        PR libfortran/52512
        * gfortran.dg/namelist_79.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197061 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * tree-ssa-dom.c (record_equivalences_from_incoming_edge): Rework
law [Mon, 25 Mar 2013 19:05:57 +0000 (19:05 +0000)]
    * tree-ssa-dom.c (record_equivalences_from_incoming_edge): Rework
slightly to avoid creating and folding useless trees.  Simplify
        slightly by restricting to INTEGER_CSTs and using int_fits_type_p.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197060 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * alloc.c: #include <sys/types.h>.
ian [Mon, 25 Mar 2013 18:13:18 +0000 (18:13 +0000)]
* alloc.c: #include <sys/types.h>.
* mmap.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197057 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/i386/i386.md (*zero_extendsidi2): Merge with
uros [Mon, 25 Mar 2013 18:09:36 +0000 (18:09 +0000)]
* config/i386/i386.md (*zero_extendsidi2): Merge with
*zero_extendsidi2_rex64.  Use x64 and nox64 isa attributes.
* config/i386/predicates.md (x86_64_zext_operand): Rename from
x86_64_zext_general_operand.  Use nonimmediate_operand on 32bit
targets.  Clarify comment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197056 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-03-25 Martin Jambor <mjambor@suse.cz>
jamborm [Mon, 25 Mar 2013 16:50:02 +0000 (16:50 +0000)]
2013-03-25  Martin Jambor  <mjambor@suse.cz>

* ipa-prop.c (ipa_write_jump_function): Stream simple and aritmetic
pass-through jump functions differently.
(ipa_read_jump_function): Likewise.  Also use setter functions to set
up jump functions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197055 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-03-25 Martin Jambor <mjambor@suse.cz>
jamborm [Mon, 25 Mar 2013 16:42:41 +0000 (16:42 +0000)]
2013-03-25  Martin Jambor  <mjambor@suse.cz>

* ipa-cp.c (ipa_get_indirect_edge_target): Renamed to
ipa_get_indirect_edge_target_1, added parameter agg_reps and ability to
process it.
(ipa_get_indirect_edge_target): New function.
(devirtualization_time_bonus): New parameter known_aggs, pass it to
ipa_get_indirect_edge_target.  Update all callers.
(ipcp_discover_new_direct_edges): New parameter aggvals.  Pass it to
ipa_get_indirect_edge_target_1 instead of calling
ipa_get_indirect_edge_target.
(create_specialized_node): Pass aggvlas to
ipcp_discover_new_direct_edges.

testsuite/
* gcc.dg/ipa/ipcp-agg-9.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197054 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-03-25 Tobias Burnus <burnus@net-b.de>
burnus [Mon, 25 Mar 2013 15:40:26 +0000 (15:40 +0000)]
2013-03-25  Tobias Burnus  <burnus@net-b.de>

        PR fortran/38536
        PR fortran/38813
        PR fortran/38894
        PR fortran/39288
        PR fortran/40963
        PR fortran/45824
        PR fortran/47023
        PR fortran/47034
        PR fortran/49023
        PR fortran/50269
        PR fortran/50612
        PR fortran/52426
        PR fortran/54263
        PR fortran/55343
        PR fortran/55444
        PR fortran/55574
        PR fortran/56079
        PR fortran/56378
        * check.c (gfc_var_strlen): Properly handle 0-sized string.
        (gfc_check_c_sizeof): Use is_c_interoperable, add checks.
        (is_c_interoperable, gfc_check_c_associated, gfc_check_c_f_pointer,
        gfc_check_c_f_procpointer, gfc_check_c_funloc, gfc_check_c_loc): New
        functions.
        * expr.c (check_inquiry): Add c_sizeof, compiler_version and
        compiler_options.
        (gfc_check_pointer_assign): Refine function result check.
        gfortran.h (gfc_isym_id): Add GFC_ISYM_C_ASSOCIATED,
        GFC_ISYM_C_F_POINTER, GFC_ISYM_C_F_PROCPOINTER, GFC_ISYM_C_FUNLOC,
        GFC_ISYM_C_LOC.
        (iso_fortran_env_symbol, iso_c_binding_symbol): Handle
        NAMED_SUBROUTINE.
        (generate_isocbinding_symbol): Update prototype.
        (get_iso_c_sym): Remove.
        (gfc_isym_id_by_intmod, gfc_isym_id_by_intmod_sym): New prototypes.
        * intrinsic.c (gfc_intrinsic_subroutine_by_id): New function.
        (gfc_intrinsic_sub_interface): Use it.
        (add_functions, add_subroutines): Add missing C-binding intrinsics.
        (gfc_intrinsic_func_interface): Add special case for c_loc.
        gfc_isym_id_by_intmod, gfc_isym_id_by_intmod_sym): New functions.
        (gfc_intrinsic_func_interface, gfc_intrinsic_sub_interface): Use them.
        * intrinsic.h (gfc_check_c_associated, gfc_check_c_f_pointer,
        gfc_check_c_f_procpointer, gfc_check_c_funloc, gfc_check_c_loc,
        gfc_resolve_c_loc, gfc_resolve_c_funloc): New prototypes.
        * iresolve.c (gfc_resolve_c_loc, gfc_resolve_c_funloc): New
        functions.
        * iso-c-binding.def: Split PROCEDURE into NAMED_SUBROUTINE and
        NAMED_FUNCTION.
        * iso-fortran-env.def: Add NAMED_SUBROUTINE for completeness.
        * module.c (create_intrinsic_function): Support subroutines and
        derived-type results.
        (use_iso_fortran_env_module): Update calls.
        (import_iso_c_binding_module): Ditto; update calls to
        generate_isocbinding_symbol.
        * resolve.c (find_arglists): Skip for intrinsic symbols.
        (gfc_resolve_intrinsic): Find intrinsic subs via id.
        (is_scalar_expr_ptr, gfc_iso_c_func_interface,
        set_name_and_label, gfc_iso_c_sub_interface): Remove.
        (resolve_function, resolve_specific_s0): Remove calls to those.
        (resolve_structure_cons): Fix handling.
        * symbol.c (gen_special_c_interop_ptr): Update c_ptr/c_funptr
        generation.
        (gen_cptr_param, gen_fptr_param, gen_shape_param,
        build_formal_args, get_iso_c_sym): Remove.
        (std_for_isocbinding_symbol): Handle NAMED_SUBROUTINE.
        (generate_isocbinding_symbol): Support hidden symbols and
        using c_ptr/c_funptr symtrees for nullptr defs.
        * target-memory.c (gfc_target_encode_expr): Fix handling
        of c_ptr/c_funptr.
        * trans-expr.c (conv_isocbinding_procedure): Remove.
        (gfc_conv_procedure_call): Remove call to it.
        (gfc_trans_subcomponent_assign, gfc_conv_expr): Update handling
        of c_ptr/c_funptr.
        * trans-intrinsic.c (conv_isocbinding_function,
        conv_isocbinding_subroutine): New.
        (gfc_conv_intrinsic_function, gfc_conv_intrinsic_subroutine):
        Call them.
        * trans-io.c (transfer_expr): Fix handling of c_ptr/c_funptr.
        * trans-types.c (gfc_typenode_for_spec,
        gfc_get_derived_type): Ditto.
        (gfc_init_c_interop_kinds): Handle NAMED_SUBROUTINE.

2013-03-25  Tobias Burnus  <burnus@net-b.de>

        PR fortran/38536
        PR fortran/38813
        PR fortran/38894
        PR fortran/39288
        PR fortran/40963
        PR fortran/45824
        PR fortran/47023
        PR fortran/47034
        PR fortran/49023
        PR fortran/50269
        PR fortran/50612
        PR fortran/52426
        PR fortran/54263
        PR fortran/55343
        PR fortran/55444
        PR fortran/55574
        PR fortran/56079
        PR fortran/56378
        * gfortran.dg/c_assoc_2.f03: Update dg-error wording.
        * gfortran.dg/c_f_pointer_shape_test.f90: Ditto.
        * gfortran.dg/c_f_pointer_shape_tests_3.f03: Ditto.
        * gfortran.dg/c_f_pointer_tests_5.f90: Ditto.
        * gfortran.dg/c_funloc_tests_2.f03: Ditto.
        * gfortran.dg/c_funloc_tests_5.f03: Ditto.
        * gfortran.dg/c_funloc_tests_6.f90: Ditto.
        * gfortran.dg/c_loc_tests_10.f03: Add -std=f2008.
        * gfortran.dg/c_loc_tests_11.f03: Ditto, update dg-error.
        * gfortran.dg/c_loc_tests_16.f90: Ditto.
        * gfortran.dg/c_loc_tests_4.f03: Ditto.
        * gfortran.dg/c_loc_tests_15.f90: Update dg-error wording.
        * gfortran.dg/c_loc_tests_3.f03: Valid since F2003 TC5.
        * gfortran.dg/c_loc_tests_8.f03: Ditto.
        * gfortran.dg/c_ptr_tests_14.f90: Update scan-tree-dump-times.
        * gfortran.dg/c_ptr_tests_15.f90: Ditto.
        * gfortran.dg/c_sizeof_1.f90: Fix invalid code.
        * gfortran.dg/iso_c_binding_init_expr.f03: Update dg-error wording.
        * gfortran.dg/pr32601_1.f03: Ditto.
        * gfortran.dg/storage_size_2.f08: Remove dg-error.
        * gfortran.dg/blockdata_7.f90: New.
        * gfortran.dg/c_assoc_4.f90: New.
        * gfortran.dg/c_f_pointer_tests_6.f90: New.
        * gfortran.dg/c_f_pointer_tests_7.f90: New.
        * gfortran.dg/c_funloc_tests_8.f90: New.
        * gfortran.dg/c_loc_test_17.f90: New.
        * gfortran.dg/c_loc_test_18.f90: New.
        * gfortran.dg/c_loc_test_19.f90: New.
        * gfortran.dg/c_loc_test_20.f90: New.
        * gfortran.dg/c_sizeof_5.f90: New.
        * gfortran.dg/iso_c_binding_rename_3.f90: New.
        * gfortran.dg/transfer_resolve_2.f90: New.
        * gfortran.dg/transfer_resolve_3.f90: New.
        * gfortran.dg/transfer_resolve_4.f90: New.
        * gfortran.dg/pr32601.f03: Update dg-error.
        * gfortran.dg/c_ptr_tests_13.f03: Update dg-error.
        * gfortran.dg/c_ptr_tests_9.f03: Fix test case.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197053 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agogcc/
ktkachov [Mon, 25 Mar 2013 15:20:44 +0000 (15:20 +0000)]
gcc/
2013-03-25  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* config/arm/arm.md (f_sels, f_seld): New types.
(*cmov<mode>): New pattern.
* config/arm/predicates.md (arm_vsel_comparison_operator): New
predicate.

gcc/testsuite/
2013-03-25  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* gcc.target/arm/vseleqdf.c: New test.
* gcc.target/arm/vseleqsf.c: Likewise.
* gcc.target/arm/vselgedf.c: Likewise.
* gcc.target/arm/vselgesf.c: Likewise.
* gcc.target/arm/vselgtdf.c: Likewise.
* gcc.target/arm/vselgtsf.c: Likewise.
* gcc.target/arm/vselledf.c: Likewise.
* gcc.target/arm/vsellesf.c: Likewise.
* gcc.target/arm/vselltdf.c: Likewise.
* gcc.target/arm/vselltsf.c: Likewise.
* gcc.target/arm/vselnedf.c: Likewise.
* gcc.target/arm/vselnesf.c: Likewise.
* gcc.target/arm/vselvcdf.c: Likewise.
* gcc.target/arm/vselvcsf.c: Likewise.
* gcc.target/arm/vselvsdf.c: Likewise.
* gcc.target/arm/vselvssf.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197052 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agogcc/
ktkachov [Mon, 25 Mar 2013 14:55:05 +0000 (14:55 +0000)]
gcc/
Fix ChangeLog formatting.

gcc/testsuite
2013-03-25  Kyrylo Tkachov  <kyrylo.tkachov at arm.com>

* gcc.target/aarch64/atomic-comp-swap-release-acquire.c: Move test
body from here...
* gcc.target/aarch64/atomic-comp-swap-release-acquire.x: ... to here.
* gcc.target/aarch64/atomic-op-acq_rel.c: Move test body from here...
* gcc.target/aarch64/atomic-op-acq_rel.x: ... to here.
* gcc.target/aarch64/atomic-op-acquire.c: Move test body from here...
* gcc.target/aarch64/atomic-op-acquire.x: ... to here.
* gcc.target/aarch64/atomic-op-char.c: Move test body from here...
* gcc.target/aarch64/atomic-op-char.x: ... to here.
* gcc.target/aarch64/atomic-op-consume.c: Move test body from here...
* gcc.target/aarch64/atomic-op-consume.x: ... to here.
* gcc.target/aarch64/atomic-op-int.c: Move test body from here...
* gcc.target/aarch64/atomic-op-int.x: ... to here.
* gcc.target/aarch64/atomic-op-relaxed.c: Move test body from here...
* gcc.target/aarch64/atomic-op-relaxed.x: ... to here.
* gcc.target/aarch64/atomic-op-release.c: Move test body from here...
* gcc.target/aarch64/atomic-op-release.x: ... to here.
* gcc.target/aarch64/atomic-op-seq_cst.c: Move test body from here...
* gcc.target/aarch64/atomic-op-seq_cst.x: ... to here.
* gcc.target/aarch64/atomic-op-short.c: Move test body from here...
* gcc.target/aarch64/atomic-op-short.x: ... to here.
* gcc.target/arm/atomic-comp-swap-release-acquire.c: New test.
* gcc.target/arm/atomic-op-acq_rel.c: Likewise.
* gcc.target/arm/atomic-op-acquire.c: Likewise.
* gcc.target/arm/atomic-op-char.c: Likewise.
* gcc.target/arm/atomic-op-consume.c: Likewise.
* gcc.target/arm/atomic-op-int.c: Likewise.
* gcc.target/arm/atomic-op-relaxed.c: Likewise.
* gcc.target/arm/atomic-op-release.c: Likewise.
* gcc.target/arm/atomic-op-seq_cst.c: Likewise.
* gcc.target/arm/atomic-op-short.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197051 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/i386/cygwin.S: Replace use of _WIN64 by __x86_64__.
ktietz [Mon, 25 Mar 2013 14:54:30 +0000 (14:54 +0000)]
    * config/i386/cygwin.S: Replace use of _WIN64 by __x86_64__.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197050 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/i386/xm-mingw32.h (__USE_MINGW_ANSI_STDIO): Enable
ktietz [Mon, 25 Mar 2013 14:52:48 +0000 (14:52 +0000)]
    * config/i386/xm-mingw32.h (__USE_MINGW_ANSI_STDIO): Enable
        POSIX-printf for mingw-hosted  builds.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197049 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-03-25 Richard Biener <rguenther@suse.de>
rguenth [Mon, 25 Mar 2013 14:46:08 +0000 (14:46 +0000)]
2013-03-25  Richard Biener  <rguenther@suse.de>

PR middle-end/56694
* tree-eh.c (lower_eh_must_not_throw): Strip BLOCKs from the
must-not-throw stmt location.

* g++.dg/torture/pr56694.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197047 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-03-25 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
ktkachov [Mon, 25 Mar 2013 14:41:37 +0000 (14:41 +0000)]
2013-03-25  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* config/arm/arm.c (arm_emit_load_exclusive): Add acq parameter.
Emit load-acquire versions when acq is true.
(arm_emit_store_exclusive): Add rel parameter.
Emit store-release versions when rel is true.
(arm_split_compare_and_swap): Use acquire-release instructions
instead.
of barriers when appropriate.
(arm_split_atomic_op): Likewise.
* config/arm/arm.h (TARGET_HAVE_LDACQ): New macro.
* config/arm/unspecs.md (VUNSPEC_LAX): New unspec.
(VUNSPEC_SLX): Likewise.
(VUNSPEC_LDA): Likewise.
(VUNSPEC_STL): Likewise.
* config/arm/sync.md (atomic_load<mode>): New pattern.
(atomic_store<mode>): Likewise.
(arm_load_acquire_exclusive<mode>): Likewise.
(arm_load_acquire_exclusivesi): Likewise.
(arm_load_acquire_exclusivedi): Likewise.
(arm_store_release_exclusive<mode>): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197046 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-03-25 Catherine Moore <clm@codesourcery.com>
clm [Mon, 25 Mar 2013 13:53:53 +0000 (13:53 +0000)]
2013-03-25  Catherine Moore  <clm@codesourcery.com>

* config/mips/constraints.md (u, Udb7 Uead, Uean, Uesp, Uib3,
Uuw6, Usb4, ZS, ZT, ZU, ZV, ZW): New constraints.
* config/mip/predicates.md (lwsp_swsp_operand,
lw16_sw16_operand, lhu16_sh16_operand, lbu16_operand,
sb16_operand, db4_operand, db7_operand, ib3_operand,
sb4_operand, ub4_operand, uh4_operand, uw4_operand,
uw5_operand, uw6_operand, addiur2_operand, addiusp_operand,
andi16_operand): New predicates.
* config/mips/mips.md (compression): New attribute.
(enabled): New attribute.
(length): Consider compression in computing length.
(shift_compression): New code attribute.
(*add<mode>3): New operands. Record compression.
(sub<mode>3): Likewise.
(one_cmpl<mode>2): Likewise.
(*and<mode>3): Likewise.
(*ior<mode>3): Likewise.
(unnamed pattern for xor): Likewise.
(*zero_extend<SHORT:mode><GPR:mode>2): Likewise.
(*<optab><mode>3): Likewise.
(*mov<mode>_internal: Likewise.
* config/mips/mips-protos.h (mips_signed_immediate_p): New.
(mips_unsigned_immediate_p): New.
(umips_lwsp_swsp_address_p): New.
(m16_based_address_p): New.
* config/mips/mips-protos.h (mips_signed_immediate_p): New prototype.
(mips_unsigned_immediate_p): New prototype.
(lwsp_swsp_address_p): New prototype.
(m16_based_address_p): New prototype.
* config/mips/mips.c (mips_unsigned_immediate_p): New function.
(mips_signed_immediate_p): New function.
(m16_based_address_p): New function.
(lwsp_swsp_address_p): New function.
(mips_print_operand_punctuation): Recognize short delay slot insns
for microMIPS.add<mode>3"

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197042 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoAdd testcases for previous commit.
ktkachov [Mon, 25 Mar 2013 13:50:45 +0000 (13:50 +0000)]
Add testcases for previous commit.

2013-03-25  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
PR target/56720
* gcc.target/arm/neon-vcond-gt.c: New test.
* gcc.target/arm/neon-vcond-ltgt.c: Likewise.
* gcc.target/arm/neon-vcond-unordered.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197041 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-03-25 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
ktkachov [Mon, 25 Mar 2013 13:48:06 +0000 (13:48 +0000)]
2013-03-25  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
PR target/56720
* config/arm/iterators.md (v_cmp_result): New mode attribute.
* config/arm/neon.md (vcond<mode><mode>): Handle unordered cases.

2013-03-25  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
PR target/56720
* gcc.target/arm/neon-vcond-gt.c: New test.
* gcc.target/arm/neon-vcond-ltgt.c: Likewise.
* gcc.target/arm/neon-vcond-unordered.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197040 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-03-25 Richard Biener <rguenther@suse.de>
rguenth [Mon, 25 Mar 2013 12:54:56 +0000 (12:54 +0000)]
2013-03-25  Richard Biener  <rguenther@suse.de>

PR tree-optimization/56689
* tree-vrp.c (execute_vrp): Mark loops for fixup if we removed
any edge.

* gcc.dg/torture/pr56689.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197039 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-03-25 Richard Biener <rguenther@suse.de>
rguenth [Mon, 25 Mar 2013 12:53:57 +0000 (12:53 +0000)]
2013-03-25  Richard Biener  <rguenther@suse.de>

* tree-ssa-loop-im.c (struct mem_ref): Use bitmap_head instead
of bitmap.
(memory_references): Likewise.
(outermost_indep_loop, mem_ref_alloc, mark_ref_stored,
gather_mem_refs_stmt, record_dep_loop, ref_indep_loop_p_1,
ref_indep_loop_p_2, find_refs_for_sm): Adjust.
(gather_mem_refs_in_loops): Fold into ...
(analyze_memory_references): ... this.  Move initialization
to tree_ssa_lim_initialize.
(fill_always_executed_in): Rename to ...
(fill_always_executed_in_1): ... this.
(fill_always_executed_in): Move contains_call computation to
this new function from ...
(tree_ssa_lim_initialize): ... here.
(tree_ssa_lim): Call fill_always_executed_in.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197038 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * postreload.c (reload_combine): Fix code detecting returns.
ebotcazou [Mon, 25 Mar 2013 11:25:28 +0000 (11:25 +0000)]
* postreload.c (reload_combine): Fix code detecting returns.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197037 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * function.c (emit_use_return_register_into_block): On cc0 targets,
ebotcazou [Mon, 25 Mar 2013 11:24:12 +0000 (11:24 +0000)]
* function.c (emit_use_return_register_into_block): On cc0 targets,
do not emit the sequence between cc0 setter and user.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197036 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * g++.dg/torture/20121105-1.C: Adjust for LLP64 targets.
ktietz [Mon, 25 Mar 2013 10:55:37 +0000 (10:55 +0000)]
* g++.dg/torture/20121105-1.C: Adjust for LLP64 targets.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197034 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/i386/predicates.md (local_symbolic_operand): Interpret
ktietz [Mon, 25 Mar 2013 10:51:11 +0000 (10:51 +0000)]
    * config/i386/predicates.md (local_symbolic_operand): Interpret
        dll-imported symbols as none-local.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197033 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * testsuite/18_support/50594.cc: For mingw-targets use only static
ktietz [Mon, 25 Mar 2013 10:47:39 +0000 (10:47 +0000)]
* testsuite/18_support/50594.cc: For mingw-targets use only static
libstdc++-version.
* testsuite/19_diagnostics/error_category/operators/equal.cc
* testsuite/19_diagnostics/error_code/cons/1.cc
* testsuite/19_diagnostics/error_code/operators/bool.cc
* testsuite/19_diagnostics/error_code/operators/equal.cc
* testsuite/19_diagnostics/error_code/operators/not_equal.cc
* testsuite/19_diagnostics/error_condition/cons/1.cc
* testsuite/19_diagnostics/error_condition/operators/bool.cc
* testsuite/19_diagnostics/error_condition/operators/equal.cc
* testsuite/19_diagnostics/error_condition/operators/not_equal.cc
* testsuite/23_containers/set/requirements/exception/basic.cc
* testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc
* testsuite/lib/dg-options.exp (dg-additional-options): New option.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197032 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-03-25 Richard Biener <rguenther@suse.de>
rguenth [Mon, 25 Mar 2013 09:44:25 +0000 (09:44 +0000)]
2013-03-25  Richard Biener  <rguenther@suse.de>

* tree-ssa-loop-im.c (struct depend): Remove.
(struct lim_aux_data): Make depends a vec of gimples.
(free_lim_aux_data): Adjust.
(add_dependency): Likewise.
(set_level): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197031 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-03-25 Richard Biener <rguenther@suse.de>
rguenth [Mon, 25 Mar 2013 09:39:52 +0000 (09:39 +0000)]
2013-03-25  Richard Biener  <rguenther@suse.de>

PR middle-end/56434
* calls.c (expand_call): Use MALLOC_ABI_ALIGNMENT to annotate
the pointer returned by calls with ECF_MALLOC set.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197030 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Mon, 25 Mar 2013 00:16:33 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197029 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-02-24 Tilo Schwarz <tilo@tilo-schwarz.de>
tiloschwarz [Sun, 24 Mar 2013 23:37:39 +0000 (23:37 +0000)]
2013-02-24  Tilo Schwarz  <tilo@tilo-schwarz.de>

* MAINTAINERS (Write After Approval): Add myself.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197025 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/i386/mmx.md (mov<mode>): Add ?!Ym,r and r,?!Ym alternatives.
uros [Sun, 24 Mar 2013 22:22:21 +0000 (22:22 +0000)]
* config/i386/mmx.md (mov<mode>): Add ?!Ym,r and r,?!Ym alternatives.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197024 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR libstdc++/56170
redi [Sun, 24 Mar 2013 22:10:29 +0000 (22:10 +0000)]
PR libstdc++/56170
* include/ext/debug_allocator.h (debug_allocator): Add missing members
to meet allocator requirements.
* testsuite/ext/debug_allocator/56170.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197023 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/i386/sse.md (mov<mode>): Merge with movv2sf expander
uros [Sun, 24 Mar 2013 18:26:48 +0000 (18:26 +0000)]
* config/i386/sse.md (mov<mode>): Merge with movv2sf expander
using MMXMODE mode iterator.
(*move<mode>_internal): Merge with *movv2sf_internal and
*movv2sf_internal_rex64 using MMXMODE mode iterator.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197021 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-03-24 Tobias Burnus <burnus@net-b.de>
burnus [Sun, 24 Mar 2013 10:16:33 +0000 (10:16 +0000)]
2013-03-24  Tobias Burnus  <burnus@net-b.de>

        PR fortran/56696
        * io/list_read.c (read_real): Fix EOF diagnostic.

2013-03-24  Tobias Burnus  <burnus@net-b.de>

        PR fortran/56696
        * gfortran.dg/eof_5.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197019 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoAvoid nonconst memmodels in libitm's local outdated copy of <atomic> too
ak [Sun, 24 Mar 2013 00:23:20 +0000 (00:23 +0000)]
Avoid nonconst memmodels in libitm's local outdated copy of <atomic> too

This avoids warnings in libitm for non constant memory models,
fixing the bootstrap with -Werror

Passed bootstrap and test on x86_64-linux.

libitm/:

2013-03-23  Andi Kleen  <andi@my.domain.org>

* local_atomic (__always_inline): Add.
(__calculate_memory_order, atomic_thread_fence,
 atomic_signal_fence, test_and_set, clear, store, load,
         exchange, compare_exchange_weak, compare_exchange_strong,
         fetch_add, fetch_sub, fetch_and, fetch_or, fetch_xor):
Add __always_inline to force inlining.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197018 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoAvoid non constant memory model uses in libatomic
ak [Sun, 24 Mar 2013 00:23:10 +0000 (00:23 +0000)]
Avoid non constant memory model uses in libatomic

x86 ends up using non constant memory models for some of the libatomic
functions. These all end up as __ATOMIC_SEQ_CST. Just use this
directly. This avoids a new warning for non constant memory
models, which broke the bootstrap with -Werror

Passed bootstrap and test on x86_64-linux.

libatomic/:

2013-03-23  Andi Kleen  <ak@linux.intel.com>

* gcas.c: (EXACT_INLINE): Use __ATOMIC_SEQ_CST.
* gexch.c: (EXACT_INLINE): Use __ATOMIC_SEQ_CST.
* gload.c: (EXACT_INLINE): Use __ATOMIC_SEQ_CST.
* gstore.c: (EXACT_INLINE): Use __ATOMIC_SEQ_CST.

diff --git a/libatomic/gcas.c b/libatomic/gcas.c
index edbf611..e3d77f3 100644
--- a/libatomic/gcas.c
+++ b/libatomic/gcas.c
@@ -32,7 +32,7 @@
 # define EXACT_INLINE(N) \
   if (C2(HAVE_ATOMIC_CAS_,N)) \
     return __atomic_compare_exchange_n \
-      (PTR(N,mptr), PTR(N,eptr), *PTR(N,dptr), false, smodel, fmodel)
+      (PTR(N,mptr), PTR(N,eptr), *PTR(N,dptr), false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST)
 #else
 # define EXACT_INLINE(N)
 #endif
diff --git a/libatomic/gexch.c b/libatomic/gexch.c
index 1999067..c8c8658 100644
--- a/libatomic/gexch.c
+++ b/libatomic/gexch.c
@@ -33,7 +33,7 @@
   if (C2(HAVE_ATOMIC_EXCHANGE_,N)) \
     { \
       *PTR(N,rptr) = __atomic_exchange_n \
- (PTR(N,mptr), *PTR(N,vptr), smodel); \
+ (PTR(N,mptr), *PTR(N,vptr), __ATOMIC_SEQ_CST); \
       return; \
     }
 #else
diff --git a/libatomic/gload.c b/libatomic/gload.c
index df318d5..85865bd 100644
--- a/libatomic/gload.c
+++ b/libatomic/gload.c
@@ -32,7 +32,7 @@
 # define EXACT_INLINE(N, DEST, SRC, DONE) \
   if (C2(HAVE_ATOMIC_LDST_,N)) \
     { \
-      DEST = __atomic_load_n (SRC, smodel); \
+      DEST = __atomic_load_n (SRC, __ATOMIC_SEQ_CST); \
       DONE; \
     }
 #else
diff --git a/libatomic/gstore.c b/libatomic/gstore.c
index d571e58..84f9a8d 100644
--- a/libatomic/gstore.c
+++ b/libatomic/gstore.c
@@ -32,7 +32,7 @@
 # define EXACT_INLINE(N) \
   if (C2(HAVE_ATOMIC_LDST_,N)) \
     { \
-      __atomic_store_n (PTR(N,mptr), *PTR(N,vptr), smodel); \
+      __atomic_store_n (PTR(N,mptr), *PTR(N,vptr), __ATOMIC_SEQ_CST); \
       return; \
     }
 #else

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197017 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Sun, 24 Mar 2013 00:16:47 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197016 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * gcse.c (oprs_unchanged_p): Respect flag_gcse_lm.
steven [Sat, 23 Mar 2013 21:41:38 +0000 (21:41 +0000)]
* gcse.c (oprs_unchanged_p): Respect flag_gcse_lm.
(record_last_mem_set_info): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197012 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * df-core.c (rest_of_handle_df_initialize): Use XCNEWVEC instead
steven [Sat, 23 Mar 2013 21:40:20 +0000 (21:40 +0000)]
* df-core.c (rest_of_handle_df_initialize): Use XCNEWVEC instead
of XNEWVEC followed by memset.
(df_worklist_dataflow): Use XNEWVEC instead of xmalloc with a cast.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197011 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-03-23 Sebastian Huber <sebastian.huber@embedded-brains.de>
joel [Sat, 23 Mar 2013 15:34:49 +0000 (15:34 +0000)]
2013-03-23  Sebastian Huber  <sebastian.huber@embedded-brains.de>

* gcc.c-torture/execute/builtins/builtins.exp: Sort targets
alphabetically.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197007 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/avr/avr.c, config/bfin/bfin.c, config/c6x/c6x.c,
steven [Sat, 23 Mar 2013 12:11:10 +0000 (12:11 +0000)]
* config/avr/avr.c, config/bfin/bfin.c, config/c6x/c6x.c,
config/epiphany/epiphany.c, config/frv/frv.c, config/ia64/ia64.c,
config/iq2000/iq2000.c, config/mcore/mcore.c, config/mep/mep.c,
config/mmix/mmix.c, config/pa/pa.c, config/rs6000/rs6000.c,
config/s390/s390.c, config/sparc/sparc.c, config/spu/spu.c,
config/stormy16/stormy16.c, config/v850/v850.c, config/xtensa/xtensa.c,
dwarf2out.c, hw-doloop.c, resource.c, rtl.h : Where applicable, use
the predicates NOTE_P, NONJUMP_INSN_P, JUMP_P, CALL_P, LABEL_P, and
BARRIER_P instead of GET_CODE.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197005 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/sparc/sparc.c (sparc_emit_probe_stack_range): Fix small
ebotcazou [Sat, 23 Mar 2013 11:32:40 +0000 (11:32 +0000)]
* config/sparc/sparc.c (sparc_emit_probe_stack_range): Fix small
inaccuracy in the probing code.

* config/sparc/sparc.md (ctrapsi4): Add predicate for operand #3.
(ctrapdi4): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197004 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * calls.c (expand_call): Add missing guard to code handling return
ebotcazou [Sat, 23 Mar 2013 11:13:39 +0000 (11:13 +0000)]
* calls.c (expand_call): Add missing guard to code handling return
of non-BLKmode structures in MSB.
* function.c (expand_function_end): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197003 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * combine.c (try_combine): Adjust comment. Do not add the set of
ebotcazou [Sat, 23 Mar 2013 11:06:21 +0000 (11:06 +0000)]
* combine.c (try_combine): Adjust comment.  Do not add the set of
insn #0 if the destination indirectly is set or dies in insn #2.
Tidy up code to distribute a new note.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197002 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Sat, 23 Mar 2013 00:16:24 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196989 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR c++/56684
jason [Fri, 22 Mar 2013 20:24:17 +0000 (20:24 +0000)]
PR c++/56684
* pt.c (instantiation_dependent_r): Check DECL_INITIAL of VAR_DECL
and CONST_DECL.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196983 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/i386/i386.md (*movdi_internal): Set prefix_rex attribute
uros [Fri, 22 Mar 2013 19:15:41 +0000 (19:15 +0000)]
* config/i386/i386.md (*movdi_internal): Set prefix_rex attribute
also for alternatives 16 and 17.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196982 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/i386/sse.md (*mov<mode>_internal): Merge with
uros [Fri, 22 Mar 2013 18:40:13 +0000 (18:40 +0000)]
* config/i386/sse.md (*mov<mode>_internal): Merge with
*mov<mode>_internal_rex64.  Use x64 and nox64 isa attributes.
Emit insn template depending on type attribute.  Use
HAVE_AS_IX86_INTERUNIT_MOVQ to handle broken assemblers that require
movd instead of movq mnemonic for interunit moves.  Rewrite mode
attribute calculation.  Remove unit attribute calculation.
Set prefix attribute to maybe_vex for sselog1 and ssemov types.
Set prefix_data16 attribute for DImode ssemov types.
Use Ym instead of y for SSE-MMX conversion alternatives.
Reorder operand constraints.

testsuite/ChangeLog:

* gcc.target/i386/pr22152.c (dg-options): Add -mtune=core2.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196981 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * df.h (df_insn_delete): Adjust prototype.
steven [Fri, 22 Mar 2013 16:37:24 +0000 (16:37 +0000)]
* df.h (df_insn_delete): Adjust prototype.
* emit-rtl.c (remove_insn): Pass a basic block to df_insn_delete
and let it decide whether mark the basic block dirty.
(set_insn_deleted): Only pass INSN_P insns to df_insn_delete.
* df-scan.c (df_insn_info_delete): New helper function, split
off from df_insn_delete.
(df_scan_free_bb_info): Use it.
(df_insn_rescan, df_insn_rescan_all, df_process_deferred_rescans):
Likewise.
(df_insn_delete): Likewise.  Take insn rtx as argument.  Verify
that the insn is actually an insn and it has a non-NULL basic block.
Do not mark basic block dirty if only deleting a DEBUG_INSN.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196978 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * df.h (df_insn_delete): Adjust prototype.
steven [Fri, 22 Mar 2013 16:37:00 +0000 (16:37 +0000)]
* df.h (df_insn_delete): Adjust prototype.
* emit-rtl.c (remove_insn): Pass a basic block to df_insn_delete
and let it decide whether mark the basic block dirty.
(set_insn_deleted): Only pass INSN_P insns to df_insn_delete.
* df-scan.c (df_insn_info_delete): New helper function, split
off from df_insn_delete.
(df_scan_free_bb_info): Use it.
(df_insn_rescan, df_insn_rescan_all, df_process_deferred_rescans):
Likewise.
(df_insn_delete): Likewise.  Take insn rtx as argument.  Verify
that the insn is actually an insn and it has a non-NULL basic block.
Do not mark basic block dirty if only deleting a DEBUG_INSN.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196977 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-03-22 Sebastian Huber <sebastian.huber@embedded-brains.de>
joel [Fri, 22 Mar 2013 15:45:10 +0000 (15:45 +0000)]
2013-03-22  Sebastian Huber  <sebastian.huber@embedded-brains.de>

PR testsuite/55994
* gcc.c-torture/execute/builtins/builtins.exp: Add
-Wl,--allow-multiple-definition for RTEMS targets.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196970 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoFix up ChangeLog entry date.
jakub [Fri, 22 Mar 2013 14:17:24 +0000 (14:17 +0000)]
Fix up ChangeLog entry date.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196965 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR other/43620
jakub [Fri, 22 Mar 2013 14:14:42 +0000 (14:14 +0000)]
PR other/43620
* configure.ac (AM_INIT_AUTOMAKE): Add no-dist.
* Makefile.in: Regenerated.
* asan/Makefile.in: Regenerated.
* interception/Makefile.in: Regenerated.
* sanitizer_common/Makefile.in: Regenerated.
* tsan/Makefile.in: Regenerated.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196964 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-03-22 Richard Biener <rguenther@suse.de>
rguenth [Fri, 22 Mar 2013 13:07:20 +0000 (13:07 +0000)]
2013-03-22  Richard Biener  <rguenther@suse.de>

* tree-ssa-loop-im.c (struct mem_ref): Remove indep_ref and
dep_ref members.
(mem_ref_alloc): Do not allocate them.
(refs_independent_p): Do not query or maintain a cache.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196961 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-03-22 Richard Biener <rguenther@suse.de>
rguenth [Fri, 22 Mar 2013 13:06:33 +0000 (13:06 +0000)]
2013-03-22  Richard Biener  <rguenther@suse.de>

* tree-ssa-loop-im.c (memory_references): Drop all_refs_in_loop.
(gather_mem_refs_in_loops): Do not compute it.
(analyze_memory_references): Do not allocate it.
(tree_ssa_lim_finalize): Do not free it.
(for_all_locs_in_loop): Do not query all_refs_in_loop.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196960 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-03-22 Richard Biener <rguenther@suse.de>
rguenth [Fri, 22 Mar 2013 13:01:42 +0000 (13:01 +0000)]
2013-03-22  Richard Biener  <rguenther@suse.de>

* is-a.h (as_a): Use gcc_checking_assert.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196959 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoAArch64 MOVK fix to operand 2
ibolton [Fri, 22 Mar 2013 12:07:20 +0000 (12:07 +0000)]
AArch64 MOVK fix to operand 2

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196958 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoTestcases that should have been committed with previous patch commits
ibolton [Fri, 22 Mar 2013 12:06:10 +0000 (12:06 +0000)]
Testcases that should have been committed with previous patch commits

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196957 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2013-03-22 Richard Biener <rguenther@suse.de>
rguenth [Fri, 22 Mar 2013 11:22:14 +0000 (11:22 +0000)]
2013-03-22  Richard Biener  <rguenther@suse.de>

* tree-ssa-loop-im.c (memory_references): Add refs_stored_in_loop
bitmaps.
(gather_mem_refs_in_loops): Perform store accumulation here.
(create_vop_ref_mapping_loop): Remove.
(create_vop_ref_mapping): Likewise.
(analyze_memory_references): Initialize refs_stored_in_loop.
(LOOP_DEP_BIT): New define to map to bits in (in)dep_loop
bitmaps.
(record_indep_loop): Remove.
(record_dep_loop): New function.
(ref_indep_loop_p_1): Adjust to only walk over references
in the loop, not its subloops.
(ref_indep_loop_p): Rename to ...
(ref_indep_loop_p_2): ... this and recurse over the loop tree,
maintaining a more fine-grained cache.
(ref_indep_loop_p): Wrap ref_indep_loop_p_2.
(tree_ssa_lim_finalize): Free refs_stored_in_loop.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196956 138bc75d-0d04-0410-961f-82ee72b054a4