rguenth [Fri, 19 Apr 2013 10:15:15 +0000 (10:15 +0000)]
2013-04-19 Richard Biener <rguenther@suse.de>
PR tree-optimization/57000
* tree-ssa-reassoc.c (pass_reassoc): Add TODO_update_ssa_only_virtuals.
* gcc.dg/tree-ssa/reassoc-27.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198087
138bc75d-0d04-0410-961f-
82ee72b054a4
mikael [Fri, 19 Apr 2013 09:58:41 +0000 (09:58 +0000)]
2013-04-19 Thomas Koenig <tkoenig@gcc.gnu.org>
Mikael Morin <mikael@gcc.gnu.org>
PR fortran/56872
* frontend-passes.c (copy_walk_reduction_arg): Change argument type
to gfc_constructor. If it has an iterator, wrap the copy of its
expression in an array constructor with that iterator. Don't special
case function expressions.
(callback_reduction): Update caller. Don't return early if there is
an iterator.
2013-04-19 Thomas Koenig <tkoenig@gcc.gnu.org>
Mikael Morin <mikael@gcc.gnu.org>
PR fortran/56872
* gfortran.dg/array_constructor_45.f90: New test.
* gfortran.dg/array_constructor_46.f90: New test.
* gfortran.dg/array_constructor_47.f90: New test.
* gfortran.dg/array_constructor_40.f90: Adjust number of
while loops.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198086
138bc75d-0d04-0410-961f-
82ee72b054a4
xguo [Fri, 19 Apr 2013 06:38:32 +0000 (06:38 +0000)]
* config/arm/cortex-m4-fpu.md (cortex_m4_v): Delete cpu unit.
Replace with ...
(cortex_m4_v_a, cortex_m4_v_b): ... new cpu units.
(cortex_m4_v, cortex_m4_exa_va, cortex_m4_exb_vb): New reservations.
(cortex_m4_fmacs): Use new reservations.
(cortex_m4_f_load, cortex_m4_f_store): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198084
138bc75d-0d04-0410-961f-
82ee72b054a4
vmakarov [Fri, 19 Apr 2013 04:00:57 +0000 (04:00 +0000)]
Fixing PR number in Changelogs
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198083
138bc75d-0d04-0410-961f-
82ee72b054a4
vmakarov [Fri, 19 Apr 2013 03:57:22 +0000 (03:57 +0000)]
2013-04-18 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/56992
* lra-coalesce.c (coalescable_pseudo_p): Remove 2nd parameter and
related code.
(lra_coalesce): Remove split_origin_bitmap and related code.
* lra.c (lra): Coalesce after undoing inheritance. Recreate live
ranges if necessary.
2013-04-18 Jakub Jelinek <jakub@redhat.com>
PR rtl-optimization/56992
* g++.dg/opt/pr56999.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198082
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Fri, 19 Apr 2013 00:16:33 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198080
138bc75d-0d04-0410-961f-
82ee72b054a4
dnovillo [Thu, 18 Apr 2013 20:52:15 +0000 (20:52 +0000)]
* validate_failures.py: Fix typo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198074
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Thu, 18 Apr 2013 19:28:31 +0000 (19:28 +0000)]
* config/i386/predicates.md (call_rex64_ms_sysv_operation): Fix comment.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198070
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Thu, 18 Apr 2013 19:18:12 +0000 (19:18 +0000)]
* config/i386/i386.c (x86_64_ms_sysv_extra_clobbered_registers):
New array.
(ix86_expand_call): Remove clobbered_registers array and use
x86_64_ms_sysv_extra_clobbered_registers instead.
* config/i386/i386.h (x86_64_ms_sysv_extra_clobbered_registers):
Declare here.
* config/i386/predicates.md (call_rex64_ms_sysv_operation): New
predicate.
* config/i386/i386.md (*call_rex64_ms_sysv): Use
call_rex64_ms_sysv_operation predicate. Remove explicit clobbers.
(*call_value_rex64_ms_sysv): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198069
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Thu, 18 Apr 2013 18:59:38 +0000 (18:59 +0000)]
2013-04-18 Tobias Burnus <burnus@net-b.de>
* expr.c (find_array_element): Don't copy expr.
* data.c (create_character_initializer): Free expr.
* frontend-passes.c (combine_array_constructor): Ditto.
* match.c (match_typebound_call, gfc_match_select_type): Ditto.
* resolve.c (resolve_typebound_function): Free gfc_ref.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198068
138bc75d-0d04-0410-961f-
82ee72b054a4
ccoutant [Thu, 18 Apr 2013 18:55:18 +0000 (18:55 +0000)]
gcc/
* dwarf2out.c (output_pubnames): Check die_perennial_p of
parent instead of die_mark.
gcc/testsuite/
* g++.dg/debug/dwarf2/pubnames-2.C: Add -fno-debug-types-section.
* g++.dg/debug/dwarf2/pubnames-3.C: New test case.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198067
138bc75d-0d04-0410-961f-
82ee72b054a4
dnovillo [Thu, 18 Apr 2013 18:11:05 +0000 (18:11 +0000)]
Loosen check for build directory.
* validate_failures.py: Loosen check for build directory.
State what failed if we couldn't find the source tree or
the target triplet.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198064
138bc75d-0d04-0410-961f-
82ee72b054a4
ccoutant [Thu, 18 Apr 2013 17:25:28 +0000 (17:25 +0000)]
gcc/testsuite/
* g++.dg/debug/dwarf2/typedef2.C: Add -fno-debug-types-section flag.
* g++.dg/debug/dwarf2/typedef4.C: Likewise.
* g++.dg/debug/dwarf2/static-data-member1.C: Likewise.
* g++.dg/debug/dwarf2/global-used-types-1.C: Likewise.
* g++.dg/debug/dwarf2/self-ref-1.C: Likewise.
* g++.dg/debug/dwarf2/nested-2.C: Likewise.
* g++.dg/debug/dwarf2/typedef1.C: Likewise.
* g++.dg/debug/dwarf2/namespace-2.C: Likewise.
* g++.dg/debug/dwarf2/integer-typedef.C: Likewise.
* g++.dg/debug/dwarf2/self-ref-2.C: Likewise.
* g++.dg/debug/dwarf2/explicit-constructor.C: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198060
138bc75d-0d04-0410-961f-
82ee72b054a4
dnovillo [Thu, 18 Apr 2013 14:29:54 +0000 (14:29 +0000)]
Simplified GIMPLE IL builder functions.
* gimple.c (create_gimple_tmp): New.
(get_expr_type): New.
(build_assign): New.
(build_type_cast): New.
* gimple.h (enum ssa_mode): Define.
(gimple_seq_set_location): New.
* asan.c (build_check_stmt): Change some gimple_build_* calls
to use build_assign and build_type_cast.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198056
138bc75d-0d04-0410-961f-
82ee72b054a4
kyukhin [Thu, 18 Apr 2013 13:54:57 +0000 (13:54 +0000)]
* gcc.target/i386/avx2-vpop-check.h: volatility is casted away in
memcmp().
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198055
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 18 Apr 2013 12:57:17 +0000 (12:57 +0000)]
2013-04-18 Richard Biener <rguenther@suse.de>
* tree-vect-data-refs.c (vect_analyze_group_access): Properly
handle negative step. Remove redundant checks.
(vect_create_data_ref_ptr): Avoid ICEs with non-constant steps.
* tree-vect-stmts.c (vectorizable_load): Instead of asserting
for negative step and grouped loads fail to vectorize.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198054
138bc75d-0d04-0410-961f-
82ee72b054a4
steven [Thu, 18 Apr 2013 08:28:10 +0000 (08:28 +0000)]
* emit-rtl.c (reset_insn_used_flags): New function.
(reset_all_used_flags): Use it.
(verify_insn_sharing): New function.
(verify_rtl_sharing): Fix verification for SEQUENCEs.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198053
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 18 Apr 2013 07:54:58 +0000 (07:54 +0000)]
PR tree-optimization/56984
* tree-vrp.c (register_edge_assert_for_2): For (x >> M) < N
and (x >> M) >= N don't register any assertion if N << M is the
minimum value.
* gcc.c-torture/compile/pr56984.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198051
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Thu, 18 Apr 2013 07:47:37 +0000 (07:47 +0000)]
2013-04-18 Tobias Burnus <burnus@net-b.de>
PR fortran/56994
* invoke.texi (NEAREST): S argument is not optional.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198048
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 18 Apr 2013 06:29:35 +0000 (06:29 +0000)]
PR rtl-optimization/56992
* gcc.dg/pr56992.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198046
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Thu, 18 Apr 2013 00:16:36 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198045
138bc75d-0d04-0410-961f-
82ee72b054a4
steven [Wed, 17 Apr 2013 23:05:59 +0000 (23:05 +0000)]
* lower-subreg.c (resolve_simple_move): If called self-recursive,
do not delete_insn insns that have not yet been emitted, only
unlink them with remove_insn.
* df-scan.c (df_insn_delete): Revert r197492.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198042
138bc75d-0d04-0410-961f-
82ee72b054a4
steven [Wed, 17 Apr 2013 19:34:14 +0000 (19:34 +0000)]
fix previous commit, include reviewer request.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198037
138bc75d-0d04-0410-961f-
82ee72b054a4
steven [Wed, 17 Apr 2013 19:33:24 +0000 (19:33 +0000)]
* emit-rtl.c (link_insn_into_chain): Handle chaining of SEQUENCEs.
* reorg.c (emit_delay_sequence): Simplify with emit-rtl API.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198036
138bc75d-0d04-0410-961f-
82ee72b054a4
janus [Wed, 17 Apr 2013 16:13:07 +0000 (16:13 +0000)]
2013-04-17 Janus Weil <janus@gcc.gnu.org>
PR fortran/56814
* interface.c (check_result_characteristics): Get result from interface
if present.
2013-04-17 Janus Weil <janus@gcc.gnu.org>
PR fortran/56814
* gfortran.dg/proc_ptr_42.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198032
138bc75d-0d04-0410-961f-
82ee72b054a4
gretay [Wed, 17 Apr 2013 15:22:05 +0000 (15:22 +0000)]
2013-04-17 Greta Yorsh <Greta.Yorsh at arm.com>
* config/arm/arm.md (movsicc_insn): Convert define_insn into
define_insn_and_split.
(and_scc,ior_scc,negscc): Likewise.
(cmpsi2_addneg, subsi3_compare): Convert to named patterns.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198030
138bc75d-0d04-0410-961f-
82ee72b054a4
gretay [Wed, 17 Apr 2013 15:17:10 +0000 (15:17 +0000)]
2013-04-17 Greta Yorsh <Greta.Yorsh at arm.com>
* config/arm/arm.c (use_return_insn): Return 0 for targets that
can benefit from using a sequence of LDRD instructions in epilogue
instead of a single LDM instruction.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198029
138bc75d-0d04-0410-961f-
82ee72b054a4
manu [Wed, 17 Apr 2013 13:17:42 +0000 (13:17 +0000)]
2013-04-17 Manuel López-Ibáñez <manu@gcc.gnu.org>
PR 45688
* doc/extend.texi: Fix typo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198028
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 17 Apr 2013 12:13:37 +0000 (12:13 +0000)]
2013-04-17 Richard Biener <rguenther@suse.de>
* tree-vect-slp.c (vect_build_slp_tree_1): Split out from ...
(vect_build_slp_tree): ... here.
(vect_build_slp_tree_1): Compute which stmts of the SLP group
match. Remove special-casing of mismatched complex loads.
(vect_build_slp_tree): Based on the result from vect_build_slp_tree_1
re-try the match with swapped commutative operands.
(vect_supported_load_permutation_p): Remove special-casing of
mismatched complex loads.
(vect_analyze_slp_instance): Adjust.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198026
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Wed, 17 Apr 2013 12:01:46 +0000 (12:01 +0000)]
2013-04-17 Richard Biener <rguenther@suse.de>
PR rtl-optimization/56921
* cfgloop.h (struct loop): Add simple_loop_desc member.
(struct niter_desc): Mark with GTY(()).
(simple_loop_desc): Do not use aux field but simple_loop_desc.
* loop-iv.c (get_simple_loop_desc): Likewise.
(free_simple_loop_desc): Likewise.
Revert
2013-04-16 Richard Biener <rguenther@suse.de>
PR rtl-optimization/56921
* loop-init.c (pass_rtl_move_loop_invariants): Add
TODO_do_not_ggc_collect to todo_flags_finish.
(pass_rtl_unswitch): Same.
(pass_rtl_unroll_and_peel_loops): Same.
(pass_rtl_doloop): Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198025
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Wed, 17 Apr 2013 11:22:07 +0000 (11:22 +0000)]
* tree-ssa-alias.c (nonoverlapping_component_refs_of_decl_p): New.
(decl_refs_may_alias_p): Add REF1 and REF2 parameters.
Use nonoverlapping_component_refs_of_decl_p to disambiguate component
references.
(refs_may_alias_p_1): Adjust call to decl_refs_may_alias_p.
* tree-streamer.c (record_common_node): Adjust reference in comment.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198024
138bc75d-0d04-0410-961f-
82ee72b054a4
jb [Wed, 17 Apr 2013 10:19:40 +0000 (10:19 +0000)]
PR 40958 Compress module files with zlib.
frontend ChangeLog:
2013-04-17 Janne Blomqvist <jb@gcc.gnu.org>
PR fortran/40958
* scanner.h: New file.
* Make-lang.in: Dependencies on scanner.h.
* scanner.c (gfc_directorylist): Move to scanner.h.
* module.c: Don't include md5.h, include scanner.h and zlib.h.
(MOD_VERSION): Add comment about backwards compatibility.
(module_fp): Change type to gzFile.
(ctx): Remove.
(gzopen_included_file_1): New function.
(gzopen_included_file): New function.
(gzopen_intrinsic_module): New function.
(write_char): Use gzputc.
(read_crc32_from_module_file): New function.
(read_md5_from_module_file): Remove.
(gfc_dump_module): Use gz* functions instead of stdio, check gzip
crc32 instead of md5.
(read_module_to_tmpbuf): Use gz* functions instead of stdio.
(gfc_use_module): Use gz* functions.
testsuite ChangeLog:
2013-04-17 Janne Blomqvist <jb@gcc.gnu.org>
PR fortran/40958
* lib/gcc-dg.exp (scan-module): Uncompress module file before
scanning.
* gfortran.dg/module_md5_1.f90: Remove.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198023
138bc75d-0d04-0410-961f-
82ee72b054a4
xguo [Wed, 17 Apr 2013 06:24:48 +0000 (06:24 +0000)]
* config/arm/cortex-m4.md: Add a new bypass.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198021
138bc75d-0d04-0410-961f-
82ee72b054a4
naveenh [Wed, 17 Apr 2013 05:37:10 +0000 (05:37 +0000)]
gcc/
2013-04-16 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
* config/aarch64/aarch64.md (*adds_<optab><mode>_multp2):
New pattern.
(*subs_<optab><mode>_multp2): New pattern.
(*adds_<optab><ALLX:mode>_<GPI:mode>): New pattern.
(*subs_<optab><ALLX:mode>_<GPI:mode>): New pattern.
gcc/testsuite/
2013-04-16 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
* gcc.target/aarch64/adds3.c: New.
* gcc.target/aarch64/subs3.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198020
138bc75d-0d04-0410-961f-
82ee72b054a4
naveenh [Wed, 17 Apr 2013 05:11:55 +0000 (05:11 +0000)]
gcc/
2013-04-16 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
* config/aarch64/aarch64.md (*adds_mul_imm_<mode>): New pattern.
(*subs_mul_imm_<mode>): New pattern.
gcc/testsuite/
2013-04-16 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
* gcc.target/aarch64/adds1.c: New.
* gcc.target/aarch64/adds2.c: New.
* gcc.target/aarch64/subs1.c: New.
* gcc.target/aarch64/subs2.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198019
138bc75d-0d04-0410-961f-
82ee72b054a4
emsr [Wed, 17 Apr 2013 01:05:43 +0000 (01:05 +0000)]
Implement n3599 String literal operator templates.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198018
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Wed, 17 Apr 2013 00:16:34 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198017
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Tue, 16 Apr 2013 20:54:21 +0000 (20:54 +0000)]
2013-04-12 Tobias Burnus <burnus@net-b.de>
PR fortran/39505
* decl.c (ext_attr_list): Add EXT_ATTR_NO_ARG_CHECK.
* gfortran.h (ext_attr_id_t): Ditto.
* gfortran.texi (GNU Fortran Compiler Directives):
Document it.
* interface.c (compare_type_rank): Ignore rank for NO_ARG_CHECK.
(compare_parameter): Ditto - and regard as unlimited polymorphic.
* resolve.c (resolve_symbol, resolve_variable): Add same
* constraint
checks as for TYPE(*); turn dummy to TYPE(*),dimension(*).
(gfc_explicit_interface_required): Require explicit interface
for NO_ARG_CHECK.
2013-04-12 Tobias Burnus <burnus@net-b.de>
PR fortran/39505
* gfortran.dg/no_arg_check_1.f90: New.
* gfortran.dg/no_arg_check_2.f90: New.
* gfortran.dg/no_arg_check_3.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198011
138bc75d-0d04-0410-961f-
82ee72b054a4
janus [Tue, 16 Apr 2013 19:07:34 +0000 (19:07 +0000)]
2013-04-16 Janus Weil <janus@gcc.gnu.org>
PR fortran/56968
* expr.c (gfc_check_pointer_assign): Handle generic functions returning
procedure pointers.
2013-04-16 Janus Weil <janus@gcc.gnu.org>
PR fortran/56968
* gfortran.dg/proc_ptr_41.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198008
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Tue, 16 Apr 2013 17:49:14 +0000 (17:49 +0000)]
PR target/56948
* config/rs6000/vsx.md (vsx_mov<mode>): Add j->r alternative.
(vsx_movti_64bit): Change j->wa to O->wa. Add n->r alternative.
(vsx_movti_32bit): Change j->wa to O->wa.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198007
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Tue, 16 Apr 2013 17:46:20 +0000 (17:46 +0000)]
2013-04-16 Richard Biener <rguenther@suse.de>
PR rtl-optimization/56921
* loop-init.c (pass_rtl_move_loop_invariants): Add
TODO_do_not_ggc_collect to todo_flags_finish.
(pass_rtl_unswitch): Same.
(pass_rtl_unroll_and_peel_loops): Same.
(pass_rtl_doloop): Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198006
138bc75d-0d04-0410-961f-
82ee72b054a4
gretay [Tue, 16 Apr 2013 17:04:22 +0000 (17:04 +0000)]
Prologue/epilogue using STRD/LDRD in ARM mode
2013-04-16 Greta Yorsh <Greta.Yorsh at arm.com>
* config/arm/arm.c (emit_multi_reg_push): New declaration
for an existing function.
(arm_emit_strd_push): New function.
(arm_expand_prologue): Used here.
(arm_emit_ldrd_pop): New function.
(arm_expand_epilogue): Used here.
(arm_get_frame_offsets): Update condition.
(arm_emit_multi_reg_pop): Add a special case for load of a single
register with writeback.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198004
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Tue, 16 Apr 2013 16:13:35 +0000 (16:13 +0000)]
* doc/invoke.texi (i386 Option): Reword -mstack-protector-guard
description.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198002
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 16 Apr 2013 15:32:26 +0000 (15:32 +0000)]
2013-04-16 Richard Biener <rguenther@suse.de>
PR tree-optimization/56756
* tree-ssa-loop-im.c (struct first_mem_ref_loc_1): New functor.
(first_mem_ref_loc): New.
(execute_sm): Place the load temporarily before a previous
access instead of in the latch edge to ensure its SSA dependencies
are defined at points dominating the load.
* gcc.dg/torture/pr56756.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198001
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Tue, 16 Apr 2013 14:17:15 +0000 (14:17 +0000)]
2013-04-16 Tobias Burnus <burnus@net-b.de>
PR fortran/56969
* intrinsic.c (gfc_intrinsic_func_interface): Don't set
module name to "(intrinsic)" for intrinsics from intrinsic
modules.
2013-04-16 Tobias Burnus <burnus@net-b.de>
PR fortran/56969
* gfortran.dg/c_assoc_5.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198000
138bc75d-0d04-0410-961f-
82ee72b054a4
schwab [Tue, 16 Apr 2013 08:49:51 +0000 (08:49 +0000)]
Enable java for aarch64
* configure.ac (aarch64-*-*): Don't disable java.
* configure: Regenerate.
libjava/:
* configure.host: Add support for aarch64.
* sysdep/aarch64/locks.h: New file.
libjava/classpath/:
* native/fdlibm/ieeefp.h: Add support for aarch64.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197997
138bc75d-0d04-0410-961f-
82ee72b054a4
steven [Tue, 16 Apr 2013 06:26:18 +0000 (06:26 +0000)]
* cfgrtl.c (cfg_layout_merge_blocks): Revert r184005, implement
correct fix by moving header and footer insn to the footer of
the merged basic block. Clear BB_END of the merged-away block.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197995
138bc75d-0d04-0410-961f-
82ee72b054a4
steven [Tue, 16 Apr 2013 06:24:47 +0000 (06:24 +0000)]
PR middle-end/43631
* emit-rtl.c (make_note_raw): New function.
(link_insn_into_chain): New static inline function.
(add_insn): Use it.
(add_insn_before, add_insn_after): Factor insn chain linking code...
(add_insn_before_nobb, add_insn_after_nobb): ...here, new functions
using link_insn_into_chain.
(note_outside_basic_block_p): New helper function for emit_note_after
and emit_note_before.
(emit_note_after): Use nobb variant of add_insn_after if the note
should not be contained in a basic block.
(emit_note_before): Use nobb variant of add_insn_before if the note
should not be contained in a basic block.
(emit_note_copy): Use make_note_raw.
(emit_note): Likewise.
* bb-reorder.c (insert_section_boundary_note): Remove hack to set
BLOCK_FOR_INSN to NULL manually for NOTE_INSN_SWITCH_TEXT_SECTIONS.
* jump.c (cleanup_barriers): Use reorder_insns_nobb to avoid making
the moved barrier the tail of the basic block it follows.
* var-tracking.c (pass_variable_tracking): Add TODO_verify_flow.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197994
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Tue, 16 Apr 2013 05:15:00 +0000 (05:15 +0000)]
* g++.dg/ipa/devirt-c-7.C: Require nonpic effective target.
* gcc.c-torture/execute/pr33992.x: Remove.
* gcc.c-torture/execute/pr33992.c (foo): Declare as static.
* gcc.dg/uninit-pred-5_a.c (foo): Ditto.
* gcc.dg/uninit-pred-5_b.c (foo): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197993
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Tue, 16 Apr 2013 00:16:32 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197992
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 15 Apr 2013 15:24:11 +0000 (15:24 +0000)]
* pt.c (tsubst) [DECLTYPE_TYPE]: Use tsubst_copy_and_build.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197983
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 15 Apr 2013 15:24:03 +0000 (15:24 +0000)]
PR c++/52748
* pt.c (tsubst) [DECLTYPE_TYPE]: If ~id is an expression
rather than a destructor name, it isn't an unqualified-name.
(tsubst_copy_and_build): Pass down decltype_flag to operator
handling code, too.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197982
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 15 Apr 2013 15:23:53 +0000 (15:23 +0000)]
PR c++/56388
* semantics.c (insert_capture_proxy): Just use index 1 in the
stmt_list_stack.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197981
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 15 Apr 2013 14:56:36 +0000 (14:56 +0000)]
PR tree-optimization/56962
* gimple-ssa-strength-reduction.c (record_increment): Only set
initializer if gimple_assign_rhs_code is {,POINTER_}PLUS_EXPR and
either rhs1 or rhs2 is equal to c->base_expr.
* gcc.c-torture/execute/pr56962.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197978
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Mon, 15 Apr 2013 14:08:41 +0000 (14:08 +0000)]
2013-04-15 Richard Biener <rguenther@suse.de>
PR tree-optimization/56933
* tree-vectorizer.h (struct _stmt_vec_info): Remove read_write_dep
member.
(GROUP_READ_WRITE_DEPENDENCE): Remove.
(STMT_VINFO_GROUP_READ_WRITE_DEPENDENCE): Likewise.
* tree-vect-data-refs.c (vect_analyze_group_access): Move
dependence check ...
vect_analyze_data_ref_dependence (vect_analyze_data_ref_dependence):
... here.
* tree-vect-stmts.c (new_stmt_vec_info): Do not initialize
GROUP_READ_WRITE_DEPENDENCE.
* gcc.dg/vect/pr56933.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197972
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [Mon, 15 Apr 2013 13:09:50 +0000 (13:09 +0000)]
2013-04-15 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* emit-rtl.c (reset_all_used_flags): New function.
(verify_rtl_sharing): Call reset_all_used_flags before and after
performing the checks.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197971
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Mon, 15 Apr 2013 12:51:20 +0000 (12:51 +0000)]
2013-04-15 Tobias Burnus <burnus@net-b.de>
* intrinsic.texi (SYSTEM_CLOCK): Recommend kind=8.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197970
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Mon, 15 Apr 2013 12:45:06 +0000 (12:45 +0000)]
2013-04-15 Tobias Burnus <burnus@net-b.de>
* list_read.c (finish_separator): Initialize variable.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197969
138bc75d-0d04-0410-961f-
82ee72b054a4
jb [Mon, 15 Apr 2013 12:43:15 +0000 (12:43 +0000)]
PR 56919 Improve SYSTEM_CLOCK intrinsic on Windows.
frontend ChangeLog:
2013-04-15 Janne Blomqvist <jb@gcc.gnu.org>
PR fortran/56919
* intrinsics.texi (SYSTEM_CLOCK): Update documentation.
libgfortran ChangeLog:
2013-04-15 Janne Blomqvist <jb@gcc.gnu.org>
PR fortran/56919
* intrinsics/time_1.h: Check __CYGWIN__ in addition to
__MINGW32__.
* intrinsics/system_clock.c (GF_CLOCK_MONOTONIC): Check
_POSIX_MONOTONIC_CLOCK as well.
(system_clock_4): Use GetTickCount on Windows.
(system_clock_8): Use QueryPerformanceCounter and
QueryPerformanceCounterFrequency on Windows.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197968
138bc75d-0d04-0410-961f-
82ee72b054a4
ktkachov [Mon, 15 Apr 2013 10:43:43 +0000 (10:43 +0000)]
2013-04-15 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/arm.c (const_ok_for_dimode_op): Handle AND case.
* config/arm/arm.md (*anddi3_insn): Change to insn_and_split.
* config/arm/constraints.md (De): New constraint.
* config/arm/neon.md (anddi3_neon): Delete.
(neon_vand<mode>): Expand to standard anddi3 pattern.
* config/arm/predicates.md (imm_for_neon_inv_logic_operand):
Move earlier in the file.
(neon_inv_logic_op2): Likewise.
(arm_anddi_operand_neon): New predicate.
testsuite:
* gcc.target/arm/anddi3-opt.c: New test.
* gcc.target/arm/anddi3-opt2.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197965
138bc75d-0d04-0410-961f-
82ee72b054a4
ro [Mon, 15 Apr 2013 10:31:57 +0000 (10:31 +0000)]
Use -z ignore instead of --as-needed on Solaris
* configure.ac (gcc_cv_ld_as_needed): Set
gcc_cv_ld_as_needed_option, gcc_cv_no_as_needed_option.
Use -z ignore, -z record on *-*-solaris2*.
(HAVE_LD_AS_NEEDED): Update comment.
(LD_AS_NEEDED_OPTION, LD_NO_AS_NEEDED_OPTION): Define.
* configure: Regenerate.
* config.in: Regenerate.
* gcc.c (init_gcc_specs) [USE_LD_AS_NEEDED]: Use
LD_AS_NEEDED_OPTION, LD_NO_AS_NEEDED_OPTION.
* config/sol2.h [HAVE_LD_AS_NEEDED] (USE_LD_AS_NEEDED): Define.
* doc/tm.texi.in (USE_LD_AS_NEEDED): Allow for --as-needed
equivalents. Fix markup.
* doc/tm.texi: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197964
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Mon, 15 Apr 2013 10:03:48 +0000 (10:03 +0000)]
* config/i386/i386.opt: New option mstack-protector-guard=.
* config/i386/i386-opts.h: Add enum stack_protector_guard.
* config/i386/i386.h: Define TARGET_SSP_GLOBAL_GUARD and
TARGET_SSP_TLS_GUARD.
* config/i386/i386.c (ix86_option_override_internal): Set
ix86_stack_protector_guard.
* config/i386/i386.md (stack_protect_set): Enable for
TARGET_SSP_TLS_GUARD only.
(stack_protect_set_<mode>): Ditto.
(stack_protect_test): Ditto.
(stack_protect_test_<mode>): Ditto.
* doc/invoke.texi (i386 Option): Document.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197963
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Mon, 15 Apr 2013 09:40:28 +0000 (09:40 +0000)]
2013-04-15 Tobias Burnus <burnus@net-b.de>
* class.c (gfc_find_intrinsic_vtab): Removed unused var.
* dependency.c (check_data_pointer_types): Fix check.
* frontend-passes.c (check_data_pointer_types): Remove
superfluous statement.
* parse.c (decode_omp_directive): Add missing break.
* resolve.c (resolve_typebound_subroutine: Free variable.
* trans-decl.c (create_function_arglist): Correct condition.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197961
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Mon, 15 Apr 2013 08:28:41 +0000 (08:28 +0000)]
PR target/56890
* config/sparc/sparc.c (enum sparc_mode_class): Add H_MODE value.
(S_MODES): Set H_MODE bit.
(SF_MODES): Set only S_MODE and SF_MODE bits.
(DF_MODES): Set SF_MODES and only D_MODE and DF_MODE bits.
(sparc_init_modes) <MODE_INT>: Set H_MODE bit for sub-word modes.
<MODE_VECTOR_INT>: Do not set SF_MODE for sub-word modes.
<MODE_FLOAT>: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197958
138bc75d-0d04-0410-961f-
82ee72b054a4
jye2 [Mon, 15 Apr 2013 07:48:28 +0000 (07:48 +0000)]
* config/arm/arm.c (thumb_far_jump_used_p): Fix typo in comments.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197957
138bc75d-0d04-0410-961f-
82ee72b054a4
jye2 [Mon, 15 Apr 2013 07:41:27 +0000 (07:41 +0000)]
2013-04-15 Joey Ye <joey.ye@arm.com>
* config/arm/arm.c (thumb1_final_prescan_insn): Assert lr save
for real far jump.
(thumb_far_jump_used_p): Count instruction size and set
far_jump_used.
testsuite:
* gcc.target/arm/thumb1-far-jump-1.c: New test.
* gcc.target/arm/thumb1-far-jump-2.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197956
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Mon, 15 Apr 2013 00:16:53 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197954
138bc75d-0d04-0410-961f-
82ee72b054a4
gerald [Sun, 14 Apr 2013 21:16:58 +0000 (21:16 +0000)]
* gcj.texi (Configure-time Options): Refer to GCC, not gcc.
(Resources): Adjust reference to Mauve.
Remove link to java.sun.com.
Refer to GCC, not gcc.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197951
138bc75d-0d04-0410-961f-
82ee72b054a4
mikael [Sun, 14 Apr 2013 17:50:57 +0000 (17:50 +0000)]
fortran/
PR fortran/56816
* match.c (gfc_match_select_type): Add syntax error. Move namespace
allocation and cleanup...
* parse.c (decode_statement): ... here.
testsuite/
PR fortran/56816
* gfortran.dg/select_type_33.f03: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197950
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Sun, 14 Apr 2013 09:46:02 +0000 (09:46 +0000)]
* reorg.c (fill_simple_delay_slots): Reindent block of code.
* resource.c (mark_target_live_regs): Reformat conditional block.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197949
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sun, 14 Apr 2013 00:16:43 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197948
138bc75d-0d04-0410-961f-
82ee72b054a4
steven [Sat, 13 Apr 2013 18:08:19 +0000 (18:08 +0000)]
* sched-deps.c (deps_analyze_insn): Do not check for EH_REGION insn
notes, they are emitted only just before final.
* sched-int.h: Include insn-attr.h before checking INSN_SCHEDULING.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197945
138bc75d-0d04-0410-961f-
82ee72b054a4
janus [Sat, 13 Apr 2013 10:52:31 +0000 (10:52 +0000)]
2013-04-13 Janus Weil <janus@gcc.gnu.org>
PR fortran/55959
* expr.c (gfc_simplify_expr): Branch is not unreachable.
2013-04-13 Janus Weil <janus@gcc.gnu.org>
PR fortran/55959
* gfortran.dg/typebound_proc_29.f03: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197943
138bc75d-0d04-0410-961f-
82ee72b054a4
steven [Sat, 13 Apr 2013 10:04:09 +0000 (10:04 +0000)]
* emit-rtl.c (remove_insn): Do not call df_insn_delete here.
* cfgrtl.c (delete_insn): Call it here instead.
* lra-spills.c (lra_final_code_change): Use delete_insn.
* haifa-sched.c (sched_remove_insn): Likewise.
* sel-sched-ir.c (return_nop_to_pool): Clear INSN_DELETED_P for nops
returning to the nop pool.
(sel_remove_insn): Simplify the only_disconnect case via remove_insn,
use delete_insn for definitive removal. Clear BLOCK_FOR_INSN.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197942
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sat, 13 Apr 2013 00:16:43 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197940
138bc75d-0d04-0410-961f-
82ee72b054a4
steven [Fri, 12 Apr 2013 23:32:28 +0000 (23:32 +0000)]
* doc/tm.texi.in (LOOP_ALIGN): Remove loop note references.
* doc/tm.texi: Regenerated.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197937
138bc75d-0d04-0410-961f-
82ee72b054a4
janus [Fri, 12 Apr 2013 21:41:50 +0000 (21:41 +0000)]
2013-04-12 Janus Weil <janus@gcc.gnu.org>
PR fortran/56266
* primary.c (gfc_match_varspec): Turn gcc_assert into MATCH_ERROR.
2013-04-12 Janus Weil <janus@gcc.gnu.org>
PR fortran/56266
* gfortran.dg/typebound_proc_28.f03: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197936
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Fri, 12 Apr 2013 21:08:13 +0000 (21:08 +0000)]
* gcc.dg/tree-ssa/vrp87.c: Do not run test on ppc and xtensa
either.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197935
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Fri, 12 Apr 2013 18:23:27 +0000 (18:23 +0000)]
* config/i386/i386.c (ix86_hard_regno_mode_ok): Use ANY_QI_REGNO_P in
QImode checks.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197933
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Fri, 12 Apr 2013 17:55:48 +0000 (17:55 +0000)]
2013-04-12 Tobias Burnus <burnus@net-b.de>
PR fortran/56929
* trans-array.c (duplicate_allocatable): Fix handling
of scalar coarrays.
2013-04-12 Tobias Burnus <burnus@net-b.de>
PR fortran/56929
* gfortran.dg/coarray/alloc_comp_2.f90: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197930
138bc75d-0d04-0410-961f-
82ee72b054a4
steven [Fri, 12 Apr 2013 17:53:55 +0000 (17:53 +0000)]
* df-core.c (df_find_def): Compare register numbers.
(df_find_use): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197929
138bc75d-0d04-0410-961f-
82ee72b054a4
vmakarov [Fri, 12 Apr 2013 17:09:10 +0000 (17:09 +0000)]
2013-04-12 Vladimir Makarov <vmakarov@redhat.com>
PR target/56903
* config/i386/i386.c (ix86_hard_regno_mode_ok): Add
lra_in_progress for return.
2013-04-12 Vladimir Makarov <vmakarov@redhat.com>
PR target/56903
* gcc.target/i386/pr56903.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197927
138bc75d-0d04-0410-961f-
82ee72b054a4
gretay [Fri, 12 Apr 2013 15:22:06 +0000 (15:22 +0000)]
2013-04-12 Greta Yorsh <Greta.Yorsh@arm.com>
* config/arm/arm.md (mov_scc,mov_negscc,mov_notscc): Convert
define_insn into define_insn_and_split and emit movsicc patterns.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197925
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 12 Apr 2013 15:07:38 +0000 (15:07 +0000)]
* crontab: Disable snapshots from gcc-4_6-branch.
* update_version_svn: Ignore gcc-4_6-branch.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197924
138bc75d-0d04-0410-961f-
82ee72b054a4
janus [Fri, 12 Apr 2013 14:21:39 +0000 (14:21 +0000)]
2013-04-12 Janus Weil <janus@gcc.gnu.org>
PR fortran/56261
* gfortran.h (gfc_explicit_interface_required): New prototype.
* expr.c (gfc_check_pointer_assign): Check if an explicit interface is
required in a proc-ptr assignment.
* interface.c (check_result_characteristics): Extra check.
* resolve.c (gfc_explicit_interface_required): New function.
(resolve_global_procedure): Use new function
'gfc_explicit_interface_required'. Do a full interface check.
2013-04-12 Janus Weil <janus@gcc.gnu.org>
PR fortran/56261
* gfortran.dg/auto_char_len_4.f90: Add -pedantic. Changed error.
* gfortran.dg/assumed_rank_4.f90: Modified error wording.
* gfortran.dg/block_11.f90: Fix invalid test case.
* gfortran.dg/function_types_3.f90: Add new error message.
* gfortran.dg/global_references_1.f90: Ditto.
* gfortran.dg/import2.f90: Remove unneeded parts.
* gfortran.dg/import6.f90: Fix invalid test case.
* gfortran.dg/proc_decl_2.f90: Ditto.
* gfortran.dg/proc_decl_9.f90: Ditto.
* gfortran.dg/proc_decl_18.f90: Ditto.
* gfortran.dg/proc_ptr_40.f90: New.
* gfortran.dg/whole_file_7.f90: Modified error wording.
* gfortran.dg/whole_file_16.f90: Ditto.
* gfortran.dg/whole_file_17.f90: Add -pedantic.
* gfortran.dg/whole_file_18.f90: Modified error wording.
* gfortran.dg/whole_file_20.f03: Ditto.
* gfortran.fortran-torture/execute/intrinsic_associated.f90: Fix
invalid test case.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197922
138bc75d-0d04-0410-961f-
82ee72b054a4
gretay [Fri, 12 Apr 2013 14:19:10 +0000 (14:19 +0000)]
2013-04-12 Greta Yorsh <Greta.Yorsh@arm.com>
* config/arm/arm.c (gen_operands_ldrd_strd): Initialize "base".
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197921
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Fri, 12 Apr 2013 13:45:25 +0000 (13:45 +0000)]
2013-04-12 Robert Dewar <dewar@adacore.com>
* makeutl.adb, prj-nmsc.adb: Minor reformatting.
2013-04-12 Robert Dewar <dewar@adacore.com>
* exp_util.adb (Make_Invariant_Call): Use Check_Kind instead
of Check_Enabled.
* gnat_rm.texi (Check_Policy): Update documentation for new
Check_Policy syntax.
* sem_prag.adb (Check_Kind): Replaces Check_Enabled
(Analyze_Pragma, case Check_Policy): Rework to accomodate new
syntax (like Assertion_Policy).
* sem_prag.ads (Check_Kind): Replaces Check_Enabled.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197920
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Fri, 12 Apr 2013 13:43:43 +0000 (13:43 +0000)]
Update dependencies.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197919
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Fri, 12 Apr 2013 13:42:39 +0000 (13:42 +0000)]
2013-04-12 Doug Rupp <rupp@adacore.com>
* init.c (SS$_CONTROLC, SS$_CONTINUE) [VMS]: New macros.
(__gnat_handle_vms_condition) [VMS]: Dispatch on the Crtl/C user
handler if installed.
* ctrl_c.c (__gnat_install_int_handler)
[VMS]: Install a dummy sigaction handler to trigger the real
user handler dispatch in init.c/__gnat_handle_vms_condition.
(__gnat_uninstall_int_handler) [VMS]: Likewise.
2013-04-12 Vincent Celier <celier@adacore.com>
* clean.adb (Parse_Cmd_Line): Set Directories_Must_Exist_In_Projects
to False if switch is specified.
* makeutl.adb (Initialize_Source_Record): Do not look for the
object file if there is no object directory.
* opt.ads (Directories_Must_Exist_In_Projects): New Boolean
variable, defaulted to True.
* prj-nmsc.adb (Check_Library_Attributes): Do not fail if library
directory does not exist when Directories_Must_Exist_In_Projects is
False.
(Get_Directories): Do not fail when the object or the exec directory
do not exist when Directories_Must_Exist_In_Projects is False.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197918
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Fri, 12 Apr 2013 13:41:03 +0000 (13:41 +0000)]
2013-04-12 Robert Dewar <dewar@adacore.com>
* namet.adb, namet.ads: Minor addition (7 arg version of Nam_In).
* exp_prag.adb, sem_ch3.adb, sem_intr.adb, sem_type.adb, exp_util.adb,
sem_aux.adb, exp_ch9.adb, sem_ch7.adb, sem_ch10.adb, sem_prag.adb,
par-ch2.adb, tbuild.adb, rtsfind.adb, freeze.adb, sem_util.adb,
sem_res.adb, sem_attr.adb, exp_ch2.adb, prj-makr.adb, sem_elab.adb,
exp_ch4.adb, sem_ch4.adb, sem_mech.adb, sem_ch6.adb, par-prag.adb,
prj-nmsc.adb, exp_disp.adb, sem_ch8.adb, sem_warn.adb, par-util.adb,
sem_eval.adb, exp_intr.adb, sem_ch13.adb, exp_cg.adb, lib-xref.adb,
sem_disp.adb, exp_ch3.adb: Minor code reorganization (use Nam_In).
2013-04-12 Doug Rupp <rupp@adacore.com>
* init.c: Don't clobber condition code on VMS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197917
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Fri, 12 Apr 2013 13:39:09 +0000 (13:39 +0000)]
2013-04-12 Robert Dewar <dewar@adacore.com>
* exp_aggr.adb: Minor reformatting.
* namet.ads, namet.adb (Nam_In): New functions.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197916
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Fri, 12 Apr 2013 13:35:06 +0000 (13:35 +0000)]
2013-04-12 Robert Dewar <dewar@adacore.com>
* einfo.adb (Has_Dynamic_Predicate_Aspect): New flag.
(Has_Static_Predicate_Aspect): New flag.
* einfo.ads (Has_Dynamic_Predicate_Aspect): New flag.
(Has_Static_Predicate_Aspect): New flag.
* exp_ch9.adb: Minor reformatting.
* exp_util.adb (Make_Invariant_Call): Check_Enabled now handles
synonyms.
* gnat1drv.adb: Remove setting of Debug_Pragmas_Enabled,
since this switch is gone and control of Debug is done with
Assertions_Enabled.
* gnat_rm.texi: Update documentation for Assertion_Policy and
Check_Policy pragmas.
* opt.adb (Debug_Pragmas_Disabled[_Config]): Removed
(Debug_Pragmas_Enabled[_Config]): Removed Since debug now
controlled by Assertion_Enabled.
* opt.ads (Debug_Pragmas_Disabled[_Config]): Removed
(Debug_Pragmas_Enabled[_Config]): Removed Since debug now
controlled by Assertion_Enabled.
* par-ch2.adb (Scan_Pragma_Argument_Association): Allow new
'Class forms.
* sem_attr.adb: Minor reformatting.
* sem_ch13.adb (Analyze_Aspect_Specification): Disable aspect
if DISABLE policy applies.
* sem_ch6.adb (Grab_PPC): Check original name of aspect for
aspect from pragma (Process_PPCs): Properly check assertion policy.
* sem_prag.adb (Check_Enabled): Rewritten for new Assertion_Policy
(Check_Appicable_Policy): New procedure.
(Is_Valid_Assertion_Kind): New function.
(Rewrite_Assertion_Kind): New procedure.
(Analyze_Pragma): Handle case of disabled assertion pragma.
(Analyze_Pragma, case Assertion_Policy): Rewritten for Ada 2012.
(Analyze_Pragma, case Check): Deal with 'Class possibilities.
(Analyze_Pragma, case Check_Policy): Deal with 'Class possibilities.
(Analyze_Pragma, case Contract_Class): New handling of ignored pragma.
(Analyze_Pragma, case Debug): New control with Assertion_Policy.
(Analyze_Pragma, case Debug_Policy): Now consistent with
Assertion_Policy.
(Analyze_Pragma, case Loop_Invariant): New handling of ignored
pragma.
(Analyze_Pragma, case Loop_Variant): New handling of ignored pragma.
(Analyze_Pragma, case Precondition): Use proper name for Check pragma.
(Analyze_Pragma, case Check_Enabled): Rewritten for new policy stuff.
* sem_prag.ads (Check_Enabled): Rewritten for new
Assertion_Policy stuff.
(Check_Appicable_Policy): New procedure.
* sinfo.adb (Is_Disabled): New flag.
(Is_Ignored): New flag.
* sinfo.ads (Is_Disabled): New flag.
(Is_Ignored): New flag.
(N_Pragma_Argument_Association): New 'Class forms.
* snames.ads-tmpl: New names Name_uPre, Name_uPost,
Name_uType_Invariant, Name_uInvariant.
* switch-c.adb: Remove setting of Debug_Pragmas_Enabled for -gnata.
* tree_io.ads (ASIS_Version_Number): Updated (remove
read write of obsolete flags Debug_Pragmas_Disabled and
Debug_Pragmas_Enabled.
2013-04-12 Ed Schonberg <schonberg@adacore.com>
* exp_aggr.adb (Get_Explicit_Discriminant_Value): Subsidiary
of Build_Record_Aggr_Code, used to retrieve explicit values
for inherited discriminants in an extension aggregate, when the
ancestor type is unconstrained.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197915
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Fri, 12 Apr 2013 13:31:37 +0000 (13:31 +0000)]
2013-04-12 Ed Schonberg <schonberg@adacore.com>
* sem_attr.adb (Check_Stream_Attribute): If restriction
No_Default_Stream_Attributes is active, it is illegal to use a
predefined elementary type stream attribute either by itself,
or more importantly as part of the attribute subprogram for a
composite type. However, if the broader restriction No_Streams
is active, then stream operations are not generated, and there
is no error.
2013-04-12 Robert Dewar <dewar@adacore.com>
* gnatbind.adb: Minor reformatting.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197914
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Fri, 12 Apr 2013 13:24:37 +0000 (13:24 +0000)]
2013-04-12 Bob Duff <duff@adacore.com>
* sem_attr.adb (Analyze_Access_Attribute): Treat P'Access like a
call only in the static elaboration model.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197913
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Fri, 12 Apr 2013 13:23:23 +0000 (13:23 +0000)]
2013-04-12 Hristian Kirtchev <kirtchev@adacore.com>
* sem_prag.adb (Analyze_Input_List): Detect an illegal dependency
clause where both input and output lists are null.
(Analyze_Pragma): Update the grammar of pragma Depends.
2013-04-12 Vincent Celier <celier@adacore.com>
* gnatbind.adb (No_Restriction_List): Exclude restrictions that
take a parameter value, not a count.
* prj.ads, prj.adb (Remove_All_Restricted_Languages): New procedure.
* projects.texi: Complete documentation of attribute Roots.
2013-04-12 Thomas Quinot <quinot@adacore.com>
* exp_ch3.adb, exp_util.ads, checks.adb, freeze.adb, sem_attr.adb,
sem_ch3.adb: Minor reformatting.
* exp_ch4.adb (Size_In_Storage_Elements): Minor documentation
improvement: note that the computation is pessimistic for bit
packed arrays.
* gnat_rm.texi (Range_Length): Fix minor error in description
of attribute.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197912
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Fri, 12 Apr 2013 13:20:29 +0000 (13:20 +0000)]
2013-04-12 Hristian Kirtchev <kirtchev@adacore.com>
* aspects.adb (Find_Aspect): New routine.
(Find_Value_Of_Aspect): New routine.
(Has_Aspect): Reimplemented.
* aspects.ads (Find_Aspect): New routine.
(Find_Value_Of_Aspect): New routine, previously known as Find_Aspect.
* exp_ch5.adb (Expand_Iterator_Loop): Update the call to Find_Aspect.
* exp_util.adb (Is_Iterated_Container): Update the call to Find_Aspect.
* sem_ch4.adb (Try_Container_Indexing): Update calls to Find_Aspect.
* sem_ch5.adb (Analyze_Iterator_Specification): Update
the call to Find_Aspect. Use function Has_Aspect for better
readability.
(Preanalyze_Range): Use function Has_Aspect for better readability.
* sem_ch13.adb (Check_One_Function): Update the call to Find_Aspect.
* sem_prag.adb (Analyze_Pragma): There is no longer need to
look at the parent to extract the corresponding pragma for
aspect Global.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197911
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Fri, 12 Apr 2013 13:19:15 +0000 (13:19 +0000)]
2013-04-12 Robert Dewar <dewar@adacore.com>
* checks.adb, sem_elab.adb, repinfo.adb, sem_ch4.adb, restrict.adb,
restrict.ads: Minor reformatting.
2013-04-12 Ed Schonberg <schonberg@adacore.com>
* lib-xref.adb: Retrieve original name of classwide type if any.
2013-04-12 Thomas Quinot <quinot@adacore.com>
* exp_ch11.ads: Minor reformatting.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197910
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Fri, 12 Apr 2013 13:17:28 +0000 (13:17 +0000)]
2013-04-12 Hristian Kirtchev <kirtchev@adacore.com>
* aspects.adb: Alphabetize subprogram bodies in this unit. Add
an entry for Aspect_Ghost in the table of canonical aspects.
(Has_Aspect): New routine.
* aspects.ads: Add Aspect_Ghost to all relevant
tables. Alphabetize subprograms in this unit.
(Has_Aspect): New routine.
* einfo.adb: Add with and use clauses for Aspects.
(Is_Ghost_Function): New routine.
* einfo.ads: Add new synthesized attribute Is_Ghost_Function and
update the structure of the related nodes.
(Is_Ghost_Function): New routine.
* exp_ch4.adb (Find_Enclosing_Context): Use routine
Is_Body_Or_Package_Declaration to terminate a search.
(Is_Body_Or_Unit): Removed.
* exp_util.adb (Within_Case_Or_If_Expression): Use routine
Is_Body_Or_Package_Declaration to terminate a search.
* par-prag.adb: Add pragma Ghost to the list of pragmas that do
not need special processing by the parser.
* sem_attr.adb (Analyze_Access_Attribute): Detect an
illegal use of 'Access where the prefix is a ghost function.
(Analyze_Attribute): Use routine Is_Body_Or_Package_Declaration
to terminate a search. (Check_References_In_Prefix): Use routine
Is_Body_Or_Package_Declaration to terminate a search.
* sem_ch4.adb (Analyze_Call): Mark a function when it appears
inside an assertion expression. Verify the legality of a call
to a ghost function.
(Check_Ghost_Function_Call): New routine.
* sem_ch6.adb (Analyze_Function_Call): Code reformatting. Move
the setting of attribute In_Assertion_Expression to Analyze_Call.
(Check_Overriding_Indicator): Detect an illegal attempt to
override a function with a ghost function.
* sem_ch12.adb (Preanalyze_Actuals): Detect an illegal use of
a ghost function as a generic actual.
* sem_elab.adb (Check_Internal_Call_Continue): Update the call
to In_Assertion.
* sem_prag.adb: Add an entry for pragma Ghost in the table
of significant arguments.
(Analyze_Pragma): Do not analyze
an "others" case guard. Add processing for pragma Ghost. Use
Preanalyze_Assert_Expression when analyzing the expression of
pragmas Loop_Invariant and Loop_Variant.
* sem_util.adb (Get_Subprogram_Entity): Reimplemented.
(Is_Body_Or_Package_Declaration): New routine.
* sem_util.ads: Alphabetize subprotrams in this unit.
(Is_Body_Or_Package_Declaration): New routine.
* sinfo.adb (In_Assertion): Rename to In_Assertion_Expression.
(Set_In_Assertion): Rename to Set_In_Assertion_Expression.
* sinfo.ads: Rename flag In_Assertion to In_Assertion_Expression
to better reflect its use. Update all places that mention the flag.
(In_Assertion): Rename to In_Assertion_Expression. Update
related pragma Inline. (Set_In_Assertion): Rename to
Set_In_Assertion_Expression. Update related pragma Inline.
* snames.ads-tmpl: Add new predefined name Ghost. Add new pragma
id Pragma_Ghost.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197909
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Fri, 12 Apr 2013 13:15:12 +0000 (13:15 +0000)]
2013-04-12 Arnaud Charlet <charlet@adacore.com>
* sem_prag.adb (Set_Imported): Do not generate error for multiple
Import in CodePeer mode.
* s-rident.ads: Fix minor typo.
2013-04-12 Ed Schonberg <schonberg@adacore.com>
* checks.adb (Insert_Valid_Check): Do not insert validity check
in the body of the generated predicate function, to prevent
infinite recursion.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197908
138bc75d-0d04-0410-961f-
82ee72b054a4
charlet [Fri, 12 Apr 2013 13:12:02 +0000 (13:12 +0000)]
2013-04-12 Ed Schonberg <schonberg@adacore.com>
* s-rident.ads: Add various missing Ada 2012 restrictions:
No_Access_Parameter_Allocators, No_Coextensions,
No_Use_Of_Attribute, No_Use_Of_Pragma.
* snames.ads-tmpl: Add corresponding names.
* restrict.ads restrict.adb: Subprograms and data structures to
handle aspects No_Use_Of_Attribute and No_Use_Of_Pragma.
* sem_ch4.adb: Correct name of restrictions is
No_Standard_Allocators_After_Elaboration.
* sem_ch13.adb (Analyze_Attribute_Definition_Clause): Check
violation of restriction No_Use_Of_Attribute.
* sem_prag.adb (Process_Restrictions_Or_Restriction_Warnings):
Set restrictions No_Use_Of_Pragma and No_Use_Of_Attribute.
(Analyze_Pragma): Check violation of restriction No_Use_Of_Pragma.
* sem_res.adb: Check restrictions No_Access_Parameter_Allocators
and No_Coextensions.
* bcheck.adb: Correct name of restrictions is
No_Standard_Allocators_After_Elaboration.
* gnatbind.adb: Correct name of restrictions is
No_Standard_Allocators_After_Elaboration.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197907
138bc75d-0d04-0410-961f-
82ee72b054a4