Age | Commit message (Collapse) | Author | Files | Lines |
|
similar c-loop)
PR fortran/52865
* trans-stmt.c (gfc_trans_do): Put countm1-- before conditional
and use value of countm1 before the decrement in the condition.
From-SVN: r195241
|
|
2013-01-16 Richard Biener <rguenther@suse.de>
* tree-inline.c (tree_function_versioning): Remove set but
never used variable.
From-SVN: r195240
|
|
-ftree-loop-distribution -funswitch-loops)
2013-01-16 Richard Biener <rguenther@suse.de>
PR tree-optimization/55964
* tree-flow.h (rename_variables_in_loop): Remove.
(rename_variables_in_bb): Likewise.
* tree-loop-distribution.c (update_phis_for_loop_copy): Remove.
(copy_loop_before): Adjust and delete update-ssa status.
* tree-vect-loop-manip.c (rename_variables_in_bb): Make static.
(rename_variables_in_bb): Likewise. Properly walk over
predecessors.
(rename_variables_in_loop): Remove.
(slpeel_update_phis_for_duplicate_loop): Likewise.
(slpeel_tree_duplicate_loop_to_edge_cfg): Handle nested loops,
use available cfg machinery instead of duplicating it.
Update PHI nodes and perform poor-mans SSA update here.
(slpeel_tree_peel_loop_to_edge): Adjust.
* gcc.dg/torture/pr55964.c: New testcase.
From-SVN: r195239
|
|
-fcheck=bounds")
2013-01-16 Richard Biener <rguenther@suse.de>
PR tree-optimization/54767
PR tree-optimization/53465
* tree-vrp.c (vrp_meet_1): Revert original fix for PR53465.
(vrp_visit_phi_node): For PHI arguments coming via backedges
drop all symbolical range information.
(execute_vrp): Compute backedges.
* gfortran.fortran-torture/execute/pr54767.f90: New testcase.
From-SVN: r195238
|
|
2013-01-16 Richard Biener <rguenther@suse.de>
* doc/install.texi: Update CLooG and ISL requirements to
0.18.0 and 0.11.1.
From-SVN: r195233
|
|
PR target/55301
* config/sh/sh.c (sh_expand_prologue): Postpone new_stack mem symbol.
(broken_move): Handle UNSPECV_SP_SWITCH_B.
* config/sh/sh.md (sp_switch_1): Use set (reg:SI SP_REG).
* config/sh/sh.md (UNSPECV_SP_SWITCH_B): New.
(UNSPECV_SP_SWITCH_E): New.
(sp_switch_1): Change to an unspec.
(sp_switch_2): Change to an unspec. Don't use post-inc when we
replace $r15.
* gcc.target/sh/sh-switch.c: New testcase.
From-SVN: r195230
|
|
MEMMODEL_MASK before comparing with MEMMODEL_*...
* emit-rtl.c (need_atomic_barrier_p): Mask memory model argument
with MEMMODEL_MASK before comparing with MEMMODEL_* memory types.
* optabs.c (maybe_emit_sync_lock_test_and_set): Ditto.
(expand_mem_thread_fence): Ditto.
(expand_mem_signal_fence): Ditto.
(expand_atomic_load): Ditto.
(expand_atomic_store): Ditto.
From-SVN: r195228
|
|
correctly)
PR rtl-optimization/55547
PR rtl-optimization/53827
PR debug/53671
PR debug/49888
* alias.c (memrefs_conflict_p): Set sizes to negative after
AND adjustments.
From-SVN: r195227
|
|
From-SVN: r195225
|
|
From-SVN: r195223
|
|
Intel hosts)
PR target/55940
* function.c (thread_prologue_and_epilogue_insns): Always
add crtl->drap_reg to set_up_by_prologue.set, even if
stack_realign_drap is false.
* gcc.dg/pr55940.c: New test.
From-SVN: r195220
|
|
and<mode>3, *and<mode>_const_int, ior<mode>3, xor<mode>3, ashrsi3,
*call): Fix indention.
From-SVN: r195218
|
|
2013-01-15 Manfred Schwarb <manfred99@gmx.ch>
Harald Anlauf <anlauf@gmx.de>
* gfortran.dg/bounds_check_4.f90: Add dg-options "-fbounds-check".
* gfortran.dg/bounds_check_5.f90: Likewise.
* gfortran.dg/class_array_10.f03: Fix syntax of dg-directive.
* gfortran.dg/continuation_9.f90: Likewise.
* gfortran.dg/move_alloc_13.f90: Likewise.
* gfortran.dg/structure_constructor_11.f90: Likewise.
* gfortran.dg/tab_continuation.f: Likewise.
* gfortran.dg/warning-directive-2.F90: Likewise.
* gfortran.dg/coarray_lib_token_4.f90: Remove misspelled directive.
Co-Authored-By: Harald Anlauf <anlauf@gmx.de>
From-SVN: r195217
|
|
* gcc.target/arm/fma.c: Skip for conflicting multilib options.
* gcc.target/arm/fma-sp.c: Likewise.
From-SVN: r195213
|
|
emit-rtl.c:776)
2013-01-15 Tom de Vries <tom@codesourcery.com>
PR target/55876
* optabs.c (widen_operand): Use gen_lowpart instead of gen_rtx_SUBREG.
Update comment.
From-SVN: r195212
|
|
2013-01-15 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/pr55153
* sched-deps.c (sched_analyze_2): Add pending reads for prefetch.
2013-01-15 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/pr55153
* gcc.dg/pr55153.c: New.
From-SVN: r195211
|
|
cfgexpand.c:3753)
2013-01-15 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/55920
* tree-sra.c (analyze_access_subtree): Do not mark non-removable
accesses as grp_to_be_debug_replaced.
From-SVN: r195210
|
|
cfgexpand.c:3753)
PR tree-optimization/55920
* tree-sra.c (sra_modify_assign): If for lacc->grp_to_be_debug_replaced
there is non-useless type conversion needed from debug rhs to lhs,
use build_debug_ref_for_model and/or VIEW_CONVERT_EXPR.
* gcc.c-torture/compile/pr55920.c: New test.
From-SVN: r195209
|
|
2013-01-15 Joseph Myers <joseph@codesourcery.com>
Mikael Pettersson <mikpe@it.uu.se>
PR target/43961
* config/arm/arm.h (ADDR_VEC_ALIGN): Align SImode jump tables for
Thumb.
(ASM_OUTPUT_CASE_LABEL): Remove.
(ASM_OUTPUT_BEFORE_CASE_LABEL): Define to empty.
* final.c (shorten_branches): Update alignment of labels before
jump tables if CASE_VECTOR_SHORTEN_MODE.
Co-Authored-By: Mikael Pettersson <mikpe@it.uu.se>
From-SVN: r195208
|
|
build and not just target)
2013-01-15 Richard Biener <rguenther@suse.de>
PR bootstrap/55961
* system.h: Do not include gmp.h for building host tools.
From-SVN: r195205
|
|
2013-01-15 Richard Biener <rguenther@suse.de>
PR middle-end/55882
* emit-rtl.c (set_mem_attributes_minus_bitpos): Correctly
account for bitpos when computing alignment.
* gcc.dg/torture/pr55882.c: New testcase.
From-SVN: r195194
|
|
* config/i386/i386-c.c (ix86_target_macros_internal): New case.
(ix86_target_macros_internal): Likewise.
* config/i386/i386.c (m_CORE2I7): Removed.
(m_CORE_HASWELL): New macro.
(m_CORE_ALL): Likewise.
(initial_ix86_tune_features): m_CORE2I7 is replaced by m_CORE_ALL.
(initial_ix86_arch_features): Likewise.
(processor_target_table): Initializations for Core avx2.
(cpu_names): New names "core-avx2".
(ix86_option_override_internal): Changed PROCESSOR_COREI7 by
PROCESSOR_CORE_HASWELL.
(ix86_issue_rate): New case.
(ia32_multipass_dfa_lookahead): Likewise.
(ix86_sched_init_global): Likewise.
* config/i386/i386.h (TARGET_HASWELL): New macro.
(target_cpu_default): New TARGET_CPU_DEFAULT_haswell.
(processor_type): New PROCESSOR_HASWELL.
From-SVN: r195191
|
|
PR tree-optimization/55955
* tree-vect-loop.c (vectorizable_reduction): Give up early on
*SHIFT_EXPR and *ROTATE_EXPR codes.
* gcc.c-torture/compile/pr55955.c: New test.
From-SVN: r195190
|
|
Consider the example of the problem report
1 template <typename>
2 constexpr bool the_truth () { return true; }
3
4 template <bool>
5 struct Takes_bool { };
6
7 template<bool B>
8 using Alias = Takes_bool<B>;
9
10 template<typename T>
11 struct test { using type = Alias<the_truth<T>()>; };
12
13 int main () {
14 test<int> a;
15
16 return 0;
17 }
that yields the error:
test.cc: In substitution of ‘template<bool B> using Alias = Takes_bool<B> [with bool B = the_truth<int>()]’:
test.cc:11:51: required from ‘struct test<int>’
test.cc:14:13: required from here
test.cc:11:51: error: integral expression ‘the_truth<int>()’ is not constant
struct test { using type = Alias<the_truth<T>()>; };
I think the issue happens in the course of instantiating test<int> at
line 14, when we look into instantiating Alias<the_truth<T>()> (at
line 11) (using instantiate_alias_template) with T = int.
There, when we check the argument 'the_truth<int>()' to see if it
actually is a constant expression, in check_instantiated_arg, we fail
to recognize it constexpr-ness b/c we just look at its TREE_CONSTANT.
At that point, the_truth<int> should have been folded, and it's not,
because instantiate_alias_template forgets to call
coerce_template_parms on its arguments.
Fixed thus, bootstapped and tested on x86_64-unknown-linux-gnu against
trunk.
gcc/cp/
PR c++/55663
* pt.c (coerce_innermost_template_parms): New static function.
(instantiate_alias_template): Use it here.
gcc/testsuite/
PR c++/55663
* g++.dg/cpp0x/alias-decl-31.C: New test.
From-SVN: r195189
|
|
PR tree-optimization/48766
* opts.c (common_handle_option): For -fwrapv disable -ftrapv, for
-ftrapv disable -fwrapv.
From-SVN: r195186
|
|
proc-ptr function result)
2013-01-15 Paul Thomas <pault@gcc.gnu.org>
PR fortran/54286
* expr.c (gfc_check_pointer_assign): Check for presence of
's2' before using it.
2013-01-15 Paul Thomas <pault@gcc.gnu.org>
PR fortran/54286
* gfortran.dg/proc_ptr_result_8.f90 : Add module 'm' to check
case where interface is null.
From-SVN: r195185
|
|
From-SVN: r195184
|
|
2013-01-14 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/55806
* frontend-passes.c (optimize_reduction): New function,
including prototype.
(callback_reduction): Likewise.
(gfc_run_passes): Also run optimize_reduction.
(copy_walk_reduction_arg): New function.
(dummy_code_callback): New function.
2013-01-14 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/55806
* gfortran.dg/array_constructor_40.f90: New test.
From-SVN: r195179
|
|
and __UINT24_MAX__ with -mint8)
PR target/55974
* config/avr/avr-c.c (avr_cpu_cpp_builtins): Define __FLASH
etc. to 1 and not to __flash.
Use LL suffix for __INT24_MAX__ with -mint8.
Use ULL suffix for __UINT24_MAX__ with -mint8.
From-SVN: r195169
|
|
gcc/testsuite/
* gcc.dg/tree-ssa/slsr-8.c: Allow widening multiplications.
From-SVN: r195161
|
|
* config/avr/avr-arch.h
(struct base_arch_s): Use typedef avr_arch_t instead.
(struct arch_info_s): Use typedef avr_arch_info_t instead.
(struct mcu_type_s): Use typedef avr_mcu_t instead.
* config/avr/avr.c: Same.
* config/avr/avr-devices.c: Same.
* config/avr/driver-avr.c: Same.
* config/avr/gen-avr-mmcu-texi.c: Same.
* config/avr/avr-mcus.def: Adjust comment.
From-SVN: r195160
|
|
2013-01-14 Tejas Belagod <tejas.belagod@arm.com>
gcc/
* config/aarch64/aarch64-simd.md (*aarch64_simd_ld1r<mode>): New.
* config/aarch64/iterators.md (VALLDI): New.
testsuite/
* gcc.target/aarch64/aarch64/vect-ld1r-compile-fp.c: New.
* gcc.target/aarch64/vect-ld1r-compile.c: New.
* gcc.target/aarch64/vect-ld1r-fp.c: New.
* gcc.target/aarch64/vect-ld1r.c: New.
* gcc.target/aarch64/vect-ld1r.x: New.
From-SVN: r195158
|
|
PR target/55948
* config/i386/sync.md (atomic_store<mode>_1): New pattern.
(atomic_store<mode>): Call atomic_store<mode>_1 for IX86_HLE_RELEASE
memmodel flag.
testsuite/ChangeLog
PR target/55948
* gcc.target/i386/hle-clear-rel.c: New file
* gcc.target/i386/hle-store-rel.c: New file.
From-SVN: r195155
|
|
From-SVN: r195151
|
|
2013-01-14 Richard Biener <rguenther@suse.de>
* tree-cfg.c (verify_expr_location, verify_expr_location_1,
verify_location, collect_subblocks): New functions.
(verify_gimple_in_cfg): Verify that locations only reference
BLOCKs in the functions BLOCK tree.
From-SVN: r195147
|
|
2013-01-14 Harald Anlauf <anlauf@gmx.de>
* gfortran.dg/aint_anint_1.f90: Add dg-do run.
* gfortran.dg/bounds_check_4.f90: Likewise.
* gfortran.dg/inquire_10.f90: Likewise.
* gfortran.dg/minloc_3.f90: Likewise.
* gfortran.dg/minlocval_3.f90: Likewise.
* gfortran.dg/module_double_reuse.f90: Likewise.
* gfortran.dg/mvbits_1.f90: Likewise.
* gfortran.dg/oldstyle_1.f90: Likewise.
* gfortran.dg/pr20163-2.f: Likewise.
* gfortran.dg/save_1.f90: Likewise.
* gfortran.dg/scan_1.f90: Likewise.
* gfortran.dg/select_char_1.f90: Likewise.
* gfortran.dg/shape_4.f90: Likewise.
* gfortran.dg/coarray_29_2.f90: Fix dg-do directive.
* gfortran.dg/function_optimize_10.f90: Likewise.
* gfortran.dg/gomp/appendix-a/a.11.2.f90: Likewise.
* gfortran.dg/used_types_17.f90: Likewise.
* gfortran.dg/used_types_18.f90: Likewise.
From-SVN: r195146
|
|
2013-01-14 Richard Biener <rguenther@suse.de>
* tree-cfgcleanup.c (remove_forwarder_block): Unshare propagated
PHI argument.
* graphite-sese-to-poly.c (insert_out_of_ssa_copy): Properly
unshare reference.
(insert_out_of_ssa_copy_on_edge): Likewise.
(rewrite_close_phi_out_of_ssa): Likewise.
* tree-ssa.c (insert_debug_temp_for_var_def): Properly unshare
debug expressions.
* tree-ssa-pre.c (insert_into_preds_of_block): Properly unshare
propagated constants.
* tree-cfg.c (tree_node_can_be_shared): Handled component-refs
can not be shared.
From-SVN: r195144
|
|
* config/avr/avr-modes.def: Add GPL copyright notice.
From-SVN: r195143
|
|
From-SVN: r195140
|
|
memory model.
* config/i386/sync.md (mem_thread_fence): Mask operands[0] with
MEMMODEL_MASK to determine memory model.
(atomic_store<mode>): Ditto from operands[2].
* config/i386/i386.c (ix86_memmodel_check): Declare "strong" as bool.
From-SVN: r195137
|
|
with bogus BLOCK)
PR fortran/55935
* gimple-fold.c (get_symbol_constant_value): Call
unshare_expr.
(fold_gimple_assign): Don't call unshare_expr here.
(fold_ctor_reference): Call unshare_expr.
* trans-expr.c (gfc_conv_structure): Call
unshare_expr_without_location on the ctor elements.
From-SVN: r195136
|
|
2013-01-13 Terry Guo <terry.guo@arm.com>
* gcc/Makefile.in (s-mlib): New argument MULTILIB_REUSE.
* gcc/doc/fragments.texi: Document MULTILIB_REUSE.
* gcc/gcc.c (multilib_reuse): New internal spec.
(set_multilib_dir): Also search multilib from multilib_reuse.
* gcc/genmultilib (tmpmultilib3): Refactor code.
(tmpmultilib4): Ditto.
(multilib_reuse): New multilib argument.
From-SVN: r195134
|
|
proc-ptr function result)
2013-01-13 Paul Thomas <pault@gcc.gnu.org>
PR fortran/54286
* expr.c (gfc_check_pointer_assign): Ensure that both lvalue
and rvalue interfaces are presented to gfc_compare_interfaces.
Simplify references to interface names by using the symbols
themselves. Call gfc_compare_interfaces with s1 and s2 inter-
changed to overcome the asymmetry of this function. Do not
repeat the check for the presence of s1 and s2.
2013-01-13 Paul Thomas <pault@gcc.gnu.org>
PR fortran/54286
* gfortran.dg/proc_ptr_result_8.f90 : New test.
From-SVN: r195133
|
|
gcc/testsuite/
* gcc.dg/unroll_5.c: Add nomips16 attributes.
From-SVN: r195132
|
|
gcc/testsuite/
* gcc.dg/tree-ssa/ssa-dom-thread-4.c: Update expected results for MIPS.
From-SVN: r195131
|
|
gcc/
* Makefile.in: Update copyright.
From-SVN: r195130
|
|
From-SVN: r195128
|
|
type)
2013-01-12 Janus Weil <janus@gcc.gnu.org>
PR fortran/55072
* trans-array.c (gfc_conv_array_parameter): No packing was done for
full arrays of derived type.
2013-01-12 Janus Weil <janus@gcc.gnu.org>
PR fortran/55072
* gfortran.dg/assumed_type_2.f90: Fix test case.
* gfortran.dg/internal_pack_13.f90: New test.
* gfortran.dg/internal_pack_14.f90: New test.
From-SVN: r195125
|
|
on NO_DOLLAR_IN_LABEL systems)
2013-01-08 Paul Thomas <pault@gcc.gnu.org>
PR fortran/55868
* class.c (get_unique_type_string): Change $tar to STAR and
replace sprintf by strcpy where there is no formatting.
* decl.c (gfc_match_decl_type_spec): Change $tar to STAR.
2013-01-08 Paul Thomas <pault@gcc.gnu.org>
PR fortran/55868
* gfortran.dg/unlimited_polymorphic_8.f90: Update
scan-tree-dump-times for foo.0.x._vptr to deal with change from
$tar to STAR.
From-SVN: r195124
|
|
From-SVN: r195123
|