]> git.ipfire.org Git - thirdparty/gcc.git/log
thirdparty/gcc.git
12 years agoImplemented Cilk Plus Array Notation for C Compiler.
bviyer [Tue, 28 May 2013 19:55:10 +0000 (19:55 +0000)] 
Implemented Cilk Plus Array Notation for C Compiler.
gcc/ChangeLog
2013-05-28  Balaji V. Iyer  <balaji.v.iyer@intel.com>

* doc/extend.texi (C Extensions): Added documentation about Cilk
Plus
array notation built-in reduction functions.
* doc/passes.texi (Passes): Added documentation about changes done
for Cilk Plus.
* doc/invoke.texi (C Dialect Options): Added documentation about
the -fcilkplus flag.
* Makefile.in (C_COMMON_OBJS): Added
c-family/array-notation-common.o.
(BUILTINS_DEF): Depend on cilkplus.def.
* builtins.def: Include cilkplus.def.  Define
DEF_CILKPLUS_BUILTIN.
* builtin-types.def: Define BT_FN_INT_PTR_PTR_PTR.
* cilkplus.def: New file.

gcc/c-family/ChangeLog
2013-05-28  Balaji V. Iyer  <balaji.v.iyer@intel.com>

* c-common.c (c_define_builtins): When cilkplus is enabled, the
function array_notation_init_builtins is called.
(c_common_init_ts): Added ARRAY_NOTATION_REF as typed.
* c-common.def (ARRAY_NOTATION_REF): New tree.
* c-common.h (build_array_notation_expr): New function declaration.
(build_array_notation_ref): Likewise.
(extract_sec_implicit_index_arg): New extern declaration.
(is_sec_implicit_index_fn): Likewise.
(ARRAY_NOTATION_CHECK): New define.
(ARRAY_NOTATION_ARRAY): Likewise.
(ARRAY_NOTATION_START): Likewise.
(ARRAY_NOTATION_LENGTH): Likewise.
(ARRAY_NOTATION_STRIDE): Likewise.
* c-pretty-print.c (pp_c_postifix_expression): Added a new case for
ARRAY_NOTATION_REF.
(pp_c_expression): Likewise.
* c.opt (flag_enable_cilkplus): New flag.
* array-notation-common.c: New file.

gcc/c/ChangeLog
2013-05-28  Balaji V. Iyer  <balaji.v.iyer@intel.com>

* c-typeck.c (build_array_ref): Added a check to see if array's
index is greater than one.  If true, then emit an error.
(build_function_call_vec): Exclude error reporting and checking
for builtin array-notation functions.
(convert_arguments): Likewise.
(c_finish_return): Added a check for array notations as a return
expression.  If true, then emit an error.
(c_finish_loop): Added a check for array notations in a loop
condition.  If true then emit an error.
(lvalue_p): Added a ARRAY_NOTATION_REF case.
(build_binary_op): Added a check for array notation expr inside
op1 and op0.  If present, we call another function to find correct
type.
* Make-lang.in (C_AND_OBJC_OBJS): Added c-array-notation.o.
* c-parser.c (c_parser_compound_statement): Check if array
notation code is used in tree, if so, then transform them into
appropriate C code.
(c_parser_expr_no_commas): Check if array notation is used in LHS
or RHS, if so, then build array notation expression instead of
regular modify.
(c_parser_postfix_expression_after_primary): Added a check for
colon(s) after square braces, if so then handle it like an array
notation.  Also, break up array notations in unary op if found.
(c_parser_direct_declarator_inner): Added a check for array
notation.
(c_parser_compound_statement): Added a check for array notation in
a stmt.  If one is present, then expand array notation expr.
(c_parser_if_statement): Likewise.
(c_parser_switch_statement): Added a check for array notations in
a switch statement's condition.  If true, then output an error.
(c_parser_while_statement): Similarly, but for a while.
(c_parser_do_statement): Similarly, but for a do-while.
(c_parser_for_statement): Similarly, but for a for-loop.
(c_parser_unary_expression): Check if array notation is used in a
pre-increment or pre-decrement expression.  If true, then expand
them.
(c_parser_array_notation): New function.
* c-array-notation.c: New file.
* c-tree.h (is_cilkplus_reduce_builtin): Protoize.

gcc/testsuite/ChangeLog
2013-05-28  Balaji V. Iyer  <balaji.v.iyer@intel.com>

* c-c++-common/cilk-plus/AN/array_test1.c: New test.
* c-c++-common/cilk-plus/AN/array_test2.c: Likewise.
* c-c++-common/cilk-plus/AN/array_test_ND.c: Likewise.
* c-c++-common/cilk-plus/AN/builtin_func_double.c: Likewise.
* c-c++-common/cilk-plus/AN/builtin_func_double2.c: Likewise.
* c-c++-common/cilk-plus/AN/gather-scatter-errors.c: Likewise.
* c-c++-common/cilk-plus/AN/if_test.c: Likewise.
* c-c++-common/cilk-plus/AN/sec_implicit_ex.c: Likewise.
* c-c++-common/cilk-plus/AN/decl-ptr-colon.c: Likewise.
* c-c++-common/cilk-plus/AN/dimensionless-arrays.c: Likewise.
* c-c++-common/cilk-plus/AN/fn_ptr.c: Likewise.
* c-c++-common/cilk-plus/AN/fp_triplet_values.c: Likewise.
* c-c++-common/cilk-plus/AN/gather-scatter.c: Likewise.
* c-c++-common/cilk-plus/AN/misc.c: Likewise.
* c-c++-common/cilk-plus/AN/parser_errors.c: Likewise.
* c-c++-common/cilk-plus/AN/parser_errors2.c: Likewise.
* c-c++-common/cilk-plus/AN/parser_errors3.c: Likewise.
* c-c++-common/cilk-plus/AN/parser_errors4.c: Likewise.
* c-c++-common/cilk-plus/AN/rank_mismatch.c: Likewise.
* c-c++-common/cilk-plus/AN/rank_mismatch2.c: Likewise.
* c-c++-common/cilk-plus/AN/rank_mismatch3.c: Likewise.
* c-c++-common/cilk-plus/AN/sec_implicit.c: Likewise.
* c-c++-common/cilk-plus/AN/sec_implicit2.c: Likewise.
* c-c++-common/cilk-plus/AN/sec_reduce_max_min_ind.c: Likewise.
* c-c++-common/cilk-plus/AN/tst_lngth.c: Likewise.
* c-c++-common/cilk-plus/AN/vla.c: Likewise.
* c-c++-common/cilk-plus/AN/an-if.c: Likewise.
* c-c++-common/cilk-plus/AN/builtin_fn_custom.c: Likewise.
* c-c++-common/cilk-plus/AN/builtin_fn_mutating.c: Likewise.
* c-c++-common/cilk-plus/AN/comma_exp.c: Likewise.
* c-c++-common/cilk-plus/AN/conditional.c: Likewise.
* c-c++-common/cilk-plus/AN/exec-once.c: Likewise.
* c-c++-common/cilk-plus/AN/exec-once2.c: Likewise.
* c-c++-common/cilk-plus/AN/gather_scatter.c: Likewise.
* c-c++-common/cilk-plus/AN/n-ptr-test.c: Likewise.
* c-c++-common/cilk-plus/AN/side-effects-1.c: Likewise.
* c-c++-common/cilk-plus/AN/test_builtin_return.c: Likewise.
* c-c++-common/cilk-plus/AN/test_sec_limits.c: Likewise.
* gcc.dg/cilk-plus/cilk-plus.exp: New script.

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

12 years ago2013-05-28 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 28 May 2013 18:30:03 +0000 (18:30 +0000)] 
2013-05-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/37336
        * resolve.c (gfc_resolve_finalizers): Remove not implemented
        * error.

2013-05-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/37336
        * gfortran.dg/finalize_11.f90: New.
        * gfortran.dg/finalize_4.f03: Remove dg-error.
        * gfortran.dg/finalize_5.f03: Ditto.
        * gfortran.dg/finalize_6.f03: Ditto.
        * gfortran.dg/finalize_7.f03: Ditto.

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

12 years ago PR rtl-optimization/57439
amylaar [Tue, 28 May 2013 18:04:41 +0000 (18:04 +0000)] 
    PR rtl-optimization/57439
        * postreload.c (move2add_use_add2_insn): Use gen_lowpart_common.

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

12 years ago2013-05-28 Easwaran Raman <eraman@google.com>
eraman [Tue, 28 May 2013 17:27:54 +0000 (17:27 +0000)] 
2013-05-28  Easwaran Raman  <eraman@google.com>

PR tree-optimization/57337
* tree-ssa-reassoc.c (appears_later_in_bb): New function.
(find_insert_point): Correctly identify the insertion point
when two statements with the same UID is compared.

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

12 years ago2013-05-28 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 28 May 2013 15:24:35 +0000 (15:24 +0000)] 
2013-05-28  Tobias Burnus  <burnus@net-b.de>

        * trans-expr.c (gfc_conv_procedure_call): Deallocate
        polymorphic arrays for allocatable intent(out) dummies.
        (gfc_reset_vptr): New function, moved from trans-stmt.c
        and extended.
        * trans-stmt.c (reset_vptr): Remove.
        (gfc_trans_deallocate): Update calls.
        * trans.h (gfc_reset_vptr): New prototype.

2013-05-28  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/class_array_16.f90: New.

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

12 years ago2013-05-28 Dominique d'Humieres <dominiq@lps.ens.fr>
burnus [Tue, 28 May 2013 15:18:14 +0000 (15:18 +0000)] 
2013-05-28  Dominique d'Humieres  <dominiq@lps.ens.fr>

        PR fortran/57435
        * module.c (check_for_ambiguous): Avoid null pointer deref.

2013-05-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57435

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

12 years ago * config/sparc/sol2-unwind.h (MD_FALLBACK_FRAME_STATE_FOR): Do not set
ebotcazou [Tue, 28 May 2013 13:52:50 +0000 (13:52 +0000)] 
* config/sparc/sol2-unwind.h (MD_FALLBACK_FRAME_STATE_FOR): Do not set
fs->signal_frame for SIGFPE raised for IEEE-754 exceptions.
* config/i386/sol2-unwind.h (x86_fallback_frame_state): Likewise.

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

12 years ago2013-05-28 Richard Biener <rguenther@suse.de>
rguenth [Tue, 28 May 2013 13:36:25 +0000 (13:36 +0000)] 
2013-05-28  Richard Biener  <rguenther@suse.de>

PR tree-optimization/56787
* tree-vect-data-refs.c (vect_analyze_data_refs): Drop clobbers
from the list of data references.
* tree-vect-loop.c (vect_determine_vectorization_factor): Skip
clobbers.
(vect_analyze_loop_operations): Likewise.
(vect_transform_loop): Remove clobbers.

* gcc.dg/vect/pr56787.c: New testcase.

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

12 years ago2013-05-28 Martin Jambor <mjambor@suse.cz>
jamborm [Tue, 28 May 2013 13:18:55 +0000 (13:18 +0000)] 
2013-05-28  Martin Jambor  <mjambor@suse.cz>

* tree-cfg.c (verify_expr): Verify that BIT_FIELD_REFs, IMAGPART_EXPRs
and REALPART_EXPRs have scalar type.

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

12 years ago2013-05-28 Janus Weil <janus@gcc.gnu.org>
janus [Tue, 28 May 2013 11:21:44 +0000 (11:21 +0000)] 
2013-05-28  Janus Weil  <janus@gcc.gnu.org>
    Tobias Burnus  <burnus@net-b.de>

PR fortran/57217
* interface.c (check_dummy_characteristics): Symmetrize type check.

2013-05-28  Janus Weil  <janus@gcc.gnu.org>
    Tobias Burnus  <burnus@net-b.de>

PR fortran/57217
* gfortran.dg/typebound_override_4.f90: New.

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

12 years ago2013-05-28 Richard Biener <rguenther@suse.de>
rguenth [Tue, 28 May 2013 10:54:33 +0000 (10:54 +0000)] 
2013-05-28  Richard Biener  <rguenther@suse.de>

PR tree-optimization/57411
* tree-ssa-copy.c (may_propagate_copy): Cannot propagate
virtual operands.
* tree-ssa-dom.c (eliminate_const_or_copy): Special-case
virtual operand propagation.

* g++.dg/opt/pr57411.C: New testcase.

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

12 years ago * gcc.dg/builtin-bswap-8.c: Compile at -O2.
ebotcazou [Tue, 28 May 2013 10:30:18 +0000 (10:30 +0000)] 
* gcc.dg/builtin-bswap-8.c: Compile at -O2.
* gcc.dg/builtin-bswap-9.c: Likewise.

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

12 years ago * config/sparc/sparc.c (sparc_expand_vec_perm_bmask): Use %g0 as
ebotcazou [Tue, 28 May 2013 09:56:33 +0000 (09:56 +0000)] 
* config/sparc/sparc.c (sparc_expand_vec_perm_bmask): Use %g0 as
destination register for bmasksi_vis.
(vector_init_bshuffle): Likewise.
* config/sparc/sparc.md (vec_perm_constv8qi): Likewise.

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

12 years agoRegenerate Solaris/SPARCV9 baseline
ro [Tue, 28 May 2013 09:49:22 +0000 (09:49 +0000)] 
Regenerate Solaris/SPARCV9 baseline

* config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
Regenerate.

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

12 years ago * doc/invoke.texi (SPARC Options): Document -mfix-ut699.
ebotcazou [Tue, 28 May 2013 07:26:35 +0000 (07:26 +0000)] 
* doc/invoke.texi (SPARC Options): Document -mfix-ut699.
* builtins.c (expand_builtin_mathfn) <BUILT_IN_SQRT>: Try to widen the
mode if the instruction isn't available in the original mode.
* config/sparc/sparc.opt (mfix-ut699): New option.
* config/sparc/sparc.md (muldf3_extend): Disable if -mfix-ut699.
(divdf3): Turn into expander.
(divdf3_nofix): New insn.
(divdf3_fix): Likewise.
(divsf3): Disable if -mfix-ut699.
(sqrtdf2): Turn into expander.
(sqrtdf2_nofix): New insn.
(sqrtdf2_fix): Likewise.
(sqrtsf2): Disable if -mfix-ut699.

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

12 years agoDaily bump.
gccadmin [Tue, 28 May 2013 00:16:48 +0000 (00:16 +0000)] 
Daily bump.

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

12 years ago2013-05-27 Richard Biener <rguenther@suse.de>
rguenth [Mon, 27 May 2013 15:02:53 +0000 (15:02 +0000)] 
2013-05-27  Richard Biener  <rguenther@suse.de>

PR middle-end/57412
* omp-low.c (expand_omp_atomic_pipeline): Use the correct latch
block for the new loop.

* gcc.dg/gomp/pr57412.c: New testcase.

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

12 years ago2013-05-27 Bud Davis <jmdavis@link.com>
burnus [Mon, 27 May 2013 14:16:36 +0000 (14:16 +0000)] 
2013-05-27  Bud Davis  <jmdavis@link.com>

        PR fortran/50405
        * resolve.c (resolve_formal_arglist): Detect error when an
        * argument
        has the same name as the function.

2013-05-27  Bud Davis  <jmdavis@link.com>

        PR fortran/50405
        * gfortran.dg/stfunc_8.f90: New.

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

12 years ago2013-05-27 Richard Biener <rguenther@suse.de>
rguenth [Mon, 27 May 2013 13:02:24 +0000 (13:02 +0000)] 
2013-05-27  Richard Biener  <rguenther@suse.de>

PR tree-optimization/57343
* tree-ssa-loop-niter.c (number_of_iterations_ne_max): Do not
use multiple_of_p if not TYPE_OVERFLOW_UNDEFINED.
(number_of_iterations_cond): Do not build the folded tree.

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

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

12 years ago2013-05-27 Richard Biener <rguenther@suse.de>
rguenth [Mon, 27 May 2013 12:44:29 +0000 (12:44 +0000)] 
2013-05-27  Richard Biener  <rguenther@suse.de>

Revert
PR middle-end/57381
* fold-const.c (operand_equal_p): Compare FIELD_DECLs with
OEP_CONSTANT_ADDRESS_OF retained.

PR tree-optimization/57417
* tree-ssa-sccvn.c (vn_reference_fold_indirect): Fix test
for unchanged base.
(set_ssa_val_to): Compare addresses using
get_addr_base_and_unit_offset.

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

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

12 years ago2013-05-27 Tobias Burnus <burnus@net-b.de>
burnus [Mon, 27 May 2013 12:32:40 +0000 (12:32 +0000)] 
2013-05-27  Tobias Burnus  <burnus@net-b.de>

        * expr.c (gfc_build_intrinsic_call): Make symbol as
        * attr.artificial.
        * intrinsic.c (gfc_is_intrinsic): Disable std check for those.

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

12 years ago PR rtl-optimization/56833
amylaar [Mon, 27 May 2013 10:39:01 +0000 (10:39 +0000)] 
    PR rtl-optimization/56833
        * postreload.c (move2add_record_mode): New function.
        (move2add_record_sym_value, move2add_valid_value_p): Likewise.
        (move2add_use_add2_insn): Use move2add_record_sym_value.
        (move2add_use_add3_insn): Likewise.
        (reload_cse_move2add): Use move2add_valid_value_p and
        move2add_record_mode.  Invalidate call-clobbered and REG_INC
        affected regs by setting reg_mode to VOIDmode.
        (move2add_note_store): Don't pretend the inside of a SUBREG is
        the actual destination.  Invalidate single/leading registers by
        setting reg_mode to VOIDmode.
        Use move2add_record_sym_value, move2add_valid_value_p and
        move2add_record_mode.

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

12 years ago2013-05-27 Tobias Burnus <burnus@net-b.de>
burnus [Mon, 27 May 2013 09:28:48 +0000 (09:28 +0000)] 
2013-05-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57423
        * libgomp.texi (omp_set_dynamic, omp_set_nested, omp_set_nested,
        omp_set_num_threads, omp_init_lock, omp_set_lock, omp_test_lock,
        omp_unset_lock, omp_destroy_lock, omp_init_nest_lock,
        omp_set_nest_lock, omp_test_nest_lock, omp_unset_nest_lock,
        omp_destroy_nest_lock): Correct arguments to match the one in
        the OpenMP spec.
        * omp_lib.f90.in (omp_init_lock, omp_init_nest_lock,  omp_destroy_lock
        omp_destroy_nest_lock, omp_set_lock, omp_set_nest_lock, omp_unset_lock,
        omp_unset_nest_lock, omp_set_dynamic, omp_set_nested,
        omp_set_num_threads, omp_test_lock, omp_test_nest_lock): Ditto.

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

12 years ago2013-05-27 Richard Biener <rguenther@suse.de>
rguenth [Mon, 27 May 2013 07:48:37 +0000 (07:48 +0000)] 
2013-05-27  Richard Biener  <rguenther@suse.de>

PR tree-optimization/57396
* tree-affine.c (double_int_constant_multiple_p): Properly
return false for val == 0 and div != 0.

* gfortran.fortran-torture/execute/pr57396.f90: New testcase.

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

12 years agoDaily bump.
gccadmin [Mon, 27 May 2013 00:16:45 +0000 (00:16 +0000)] 
Daily bump.

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

12 years ago * gcc-interface/decl.c: (gnat_to_gnu_entity): In ASIS mode, do not
ebotcazou [Sun, 26 May 2013 10:23:23 +0000 (10:23 +0000)] 
* gcc-interface/decl.c: (gnat_to_gnu_entity): In ASIS mode, do not
check that access types have a set size.

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

12 years ago * gcc-interface/decl.c (vinfo_t): New type and associated vector.
ebotcazou [Sun, 26 May 2013 10:19:00 +0000 (10:19 +0000)] 
* gcc-interface/decl.c (vinfo_t): New type and associated vector.
(components_to_record): Change return type to bool.
Lay out the variants in two passes.  Do not force a specific layout for
the variant part if the variants do not have a representation clause.
Take the alignment of the variant part into account when laying out
variants without rep clause in a record type with a partial rep clause.
(create_rep_part): Do not set the position of the field.

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

12 years ago * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Last_Bit>: Add kludge
ebotcazou [Sun, 26 May 2013 10:02:33 +0000 (10:02 +0000)] 
* gcc-interface/trans.c (Attribute_to_gnu) <Attr_Last_Bit>: Add kludge
to avoid generating an overflow for -1.

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

12 years ago * gcc-interface/gigi.h (create_type_decl): Adjust prototype.
ebotcazou [Sun, 26 May 2013 09:52:10 +0000 (09:52 +0000)] 
* gcc-interface/gigi.h (create_type_decl): Adjust prototype.
(create_label_decl): Complete prototype.
(process_attributes): Declare.
* gcc-interface/decl.c (gnat_to_gnu_entity): Adjust multiple calls to
create_type_decl throughout.
<E_Enumeration_Type>: Do the layout of the type manually and call
process_attributes on it.  Reindent.
<E_Enumeration_Subtype>: Minor tweak.
<E_Floating_Point_Subtype>: Reindent.
<E_Array_Subtype>: Call process_attributes on the array type built
for a packed array type.
<E_Record_Type>: Call process_attributes on the type.
<E_Record_Subtype>: Likewise.
<E_Access_Type>: Likewise.
<E_Subprogram_Type>: Likewise.
Likewise for all types at the end of the processing.
* gcc-interface/utils.c (make_aligning_type): Adjust call to
create_type_decl.
(maybe_pad_type): Likewise.
(create_index_type): Likewise.
(create_type_decl): Remove attr_list parameter and associated code.
(create_var_decl_1): Call process_attributes on the variable.
(process_attributes): Take a pointer to the object and add in_place
and gnat_node parameters and adjust throughout.
<ATTR_MACHINE_ATTRIBUTE>: Pass ATTR_FLAG_TYPE_IN_PLACE only on demand
and set the input location.
Zap the attribute list at the end.
(create_subprog_decl): Call process_attributes on the subprogram.
(build_unc_object_type): Adjust call to create_type_decl.
(handle_vector_type_attribute): Remove dead code.

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

12 years ago * gcc-interface/gigi.h (make_aligning_type): Adjust prototype.
ebotcazou [Sun, 26 May 2013 08:55:43 +0000 (08:55 +0000)] 
* gcc-interface/gigi.h (make_aligning_type): Adjust prototype.
* gcc-interface/utils.c (make_aligning_type): Take GNAT_NODE parameter
for the position of the associated TYPE_DECL.
* gcc-interface/decl.c (gnat_to_gnu_entity): Adjust call to above.
* gcc-interface/utils2.c (maybe_wrap_malloc): Likewise.

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

12 years ago * gcc-interface/decl.c (gnat_to_gnu_entity): Do not prematurely
ebotcazou [Sun, 26 May 2013 08:48:22 +0000 (08:48 +0000)] 
* gcc-interface/decl.c (gnat_to_gnu_entity): Do not prematurely
elaborate the full view of a type with a freeze node.
* gcc-interface/trans.c (process_type): Add explicit predicate.

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

12 years ago * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Always build the
ebotcazou [Sun, 26 May 2013 08:32:34 +0000 (08:32 +0000)] 
* gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Always build the
UNC variable for aliased objects with unconstrained nominal subtype.

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

12 years agoDaily bump.
gccadmin [Sun, 26 May 2013 00:16:44 +0000 (00:16 +0000)] 
Daily bump.

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

12 years ago2013-05-24 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Sat, 25 May 2013 23:02:54 +0000 (23:02 +0000)] 
2013-05-24  Benjamin Kosnik  <bkoz@redhat.com>

* include/std/chrono: Wrap clocks in inline namespace _V2.
* src/c++11/chrono.cc: Same.
* src/c++11/compatibility-chrono.cc: Revert to previous chrono.cc
file, with default configure macros selected.

* config/abi/pre/gnu.ver (GLIBCXX_3.4.19): Use symbols from inline
namespace.
* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Fix up.

* config/abi/post/i386-linux-gnu/baseline_symbols.txt: Regenerated.
* config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Regenerated.
* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
Regenerated.
* config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
Regenerated.
* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
Regenerated.
* config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Regenerated.
* config/abi/post/s390-linux-gnu/baseline_symbols.txt: Regenerated.
* config/abi/post/i486-linux-gnu/baseline_symbols.txt: Regenerated.
* config/abi/post/solaris2.10/baseline_symbols.txt: Regenerated.
* config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Regenerated.
* config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
Regenerated.
* config/abi/post/solaris2.9/baseline_symbols.txt: Regenerated.
* config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Regenerated.

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

12 years agogcc/
rsandifo [Sat, 25 May 2013 16:04:11 +0000 (16:04 +0000)] 
gcc/
* config/mips/mips.h: Use #elif in preprocessor conditions.

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

12 years agogcc/
rsandifo [Sat, 25 May 2013 16:00:12 +0000 (16:00 +0000)] 
gcc/
PR target/53916
* config/mips/constraints.md (kl): New constraint.
* config/mips/mips.md (divmod<mode>4, udivmod<mode>4): Delete.
(divmod<mode>4_internal): Rename to divmod<mode>4.  Use "kl" as the
constraint for operand 0.  Split after CSE for MIPS16.  Emit a move
from LO for MIPS16.
(udivmod<mode>4_internal): Likewise udivmod<mode>4.

gcc/testsuite/
PR target/53916
* gcc.target/mips/div-13.c: New test.

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

12 years agogcc/
rsandifo [Sat, 25 May 2013 15:52:38 +0000 (15:52 +0000)] 
gcc/
PR target/55777
* config/mips/mips.c (mips_can_inline_p): New function.
(TARGET_CAN_INLINE_P): Define.

gcc/testsuite/
PR target/55777
* gcc.target/mips/mips16-attributes-5.c,
* gcc.target/mips/mips16-attributes-6.c: New tests.

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

12 years ago * gcc.dg/builtin-bswap-6.c: Use same options as optimize-bswapsi-1.c.
ebotcazou [Sat, 25 May 2013 13:49:27 +0000 (13:49 +0000)] 
* gcc.dg/builtin-bswap-6.c: Use same options as optimize-bswapsi-1.c.
* gcc.dg/builtin-bswap-8.c: Likewise.

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

12 years ago2013-05-25 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Sat, 25 May 2013 12:02:01 +0000 (12:02 +0000)] 
2013-05-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/52216
* g++.dg/cpp0x/new1.C: New.

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

12 years ago * sched-int.h (ds_t, dw_t): Make unsigned int.
steven [Sat, 25 May 2013 10:31:43 +0000 (10:31 +0000)] 
* sched-int.h (ds_t, dw_t): Make unsigned int.
Fix documentation that describes how all the ds_t bits are used.
Reserve the last bit for delayed-branch scheduling.
(BITS_PER_DEP_STATUS): Move to ds_t typedef.
(BITS_PER_DEP_WEAK): Fix definition and documentation.
(gen_dep_weak_1): Remove prototype.
* sched-deps.c (get_dep_weak_1): Make static.
* target.def (speculate_insn, needs_block_p, gen_spec_check,
get_insn_spec_ds, get_insn_checked_ds): Adjust hook prototypes.
* doc/tm.texi: Regenerate.
* config/ia64/ia64.c (ia64_needs_block_p): Update prototype.

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

12 years ago/cp
paolo [Sat, 25 May 2013 08:39:44 +0000 (08:39 +0000)] 
/cp
2013-05-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/25666
* decl2.c (check_classfn): Check for destructors declared as member
templates.

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

PR c++/25666
* g++.dg/parse/dtor16.C: New.
* g++.dg/parse/dtor6.C: Adjust.

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

12 years agoDaily bump.
gccadmin [Sat, 25 May 2013 00:16:40 +0000 (00:16 +0000)] 
Daily bump.

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

12 years agoUse CLOCK_HIGHRES on Solaris 9
ro [Fri, 24 May 2013 21:09:01 +0000 (21:09 +0000)] 
Use CLOCK_HIGHRES on Solaris 9

* config/os/solaris/solaris2.9/os_defines.h [!CLOCK_MONOTONIC]
(CLOCK_MONOTONIC): Define.

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

12 years ago PR debug/56950
steven [Fri, 24 May 2013 20:59:59 +0000 (20:59 +0000)] 
PR debug/56950
* haifa-sched.c (sched_extend_bb): Ignore DEBUG_INSNs.

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

12 years ago PR c++/56971
jason [Fri, 24 May 2013 20:02:07 +0000 (20:02 +0000)] 
PR c++/56971
* pt.c (any_template_arguments_need_structural_equality_p): A
TEMPLATE_TEMPLATE_PARM can require structural type comparison.

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

12 years ago2013-05-24 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 24 May 2013 18:27:59 +0000 (18:27 +0000)] 
2013-05-24  Paolo Carlini  <paolo.carlini@oracle.com>

* include/ext/type_traits.h (__is_null_pointer): Add std::nullptr_t
overload.

* include/bits/cpp_type_traits.h (__is_fundamental): Remove, unused.

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

12 years ago2013-05-24 Nathan Sidwell <nathan@codesourcery.com>
sandra [Fri, 24 May 2013 18:09:55 +0000 (18:09 +0000)] 
2013-05-24  Nathan Sidwell  <nathan@codesourcery.com>
    Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* config.gcc (powerpc-*): Allow native for with-cpu.

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

12 years ago * src/c++11/chrono.cc: If _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL,
jakub [Fri, 24 May 2013 18:08:42 +0000 (18:08 +0000)] 
* src/c++11/chrono.cc: If _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL,
include unistd.h and sys/syscall.h.  If _GLIBCXX_COMPATIBILITY_CXX0X,
don't define system_clock::is_steady, system_clock::now() and
steady_clock::is_steady.
(std::chrono::system_clock::now()): If
_GLIBCXX_USE_CLOCK_GETTIME_SYSCALL, call
syscall (SYS_clock_gettime, ...) instead of clock_gettime (...).
(std::chrono::system_clock::now()): Likewise.  Add weak attribute
if _GLIBCXX_COMPATIBILITY_CXX0X and compatibility-chrono.cc will
be non-empty.
* src/Makefile.am (cxx11_sources): Add compatibility-chrono.cc.
(compatibility-chrono.lo, compatibility-chrono.o): New goals.
* src/c++11/compatibility-chrono.cc: New file.
* acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): On linux*, check for
syscall (SYS_clock_gettime, CLOCK_MONOTONIC, &tp).
* testsuite/util/testsuite_abi.cc (check_version): Add
GLIBCXX_3.4.20 version and make it the latest.
* config/abi/pre/gnu.ver (_ZNSt6chrono12steady_clock3nowEv): Export
also @@GLIBCXX_3.4.19.  Move all symbols so far added for GCC 4.9 to
@@GLIBCXX_3.4.20 instead.
* config/abi/post/i386-linux-gnu/baseline_symbols.txt: Regenerated.
* config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Regenerated.
* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
Regenerated.
* config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
Regenerated.
* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
Regenerated.
* config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Regenerated.
* config/abi/post/s390-linux-gnu/baseline_symbols.txt: Regenerated.
* config/abi/post/i486-linux-gnu/baseline_symbols.txt: Regenerated.
* config/abi/post/solaris2.10/baseline_symbols.txt: Regenerated.
* config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Regenerated.
* config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
Regenerated.
* config/abi/post/solaris2.9/baseline_symbols.txt: Regenerated.
* config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Regenerated.
* config.h.in: Regenerated.
* src/Makefile.in: Regenerated.
* configure: Regenerated.

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

12 years ago/cp
paolo [Fri, 24 May 2013 17:37:41 +0000 (17:37 +0000)] 
/cp
2013-05-24  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/19618
* class.c (check_bitfield_decl): Warn for bool and enum bitfields
with width exceeding the type.

/testsuite
2013-05-24  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/19618
* g++.dg/expr/bitfield12.C: New.

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

12 years ago PR tree-optimization/57124
law [Fri, 24 May 2013 17:13:38 +0000 (17:13 +0000)] 
PR tree-optimization/57124
* tree-vrp.c (simplify_cond_using_ranges): Only simplify a
conversion feeding a condition if the range has an overflow
if -fstrict-overflow.  Add warnings for when we do make the
transformation.

PR tree-optimization/57124
* gcc.c-torture/execute/pr57124.c: New test.
* gcc.c-torture/execute/pr57124.x: Set -fno-strict-overflow.

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

12 years agoFix formatting of ChangeLog entries
dmalcolm [Fri, 24 May 2013 16:15:23 +0000 (16:15 +0000)] 
Fix formatting of ChangeLog entries

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

12 years agoFix the typo of discriminator.
dehao [Fri, 24 May 2013 15:52:31 +0000 (15:52 +0000)] 
Fix the typo of discriminator.

2013-05-24  Dehao Chen  <dehao@google.com>

* gcc/tree-cfg.c (locus_discrim_map): Fix the typo.
(locus_discrim_hasher): Likewise.
(locus_discrim_hasher::hash): Likewise.
(locus_discrim_hasher::equal): Likewise.

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

12 years ago2013-05-24 Martin Jambor <mjambor@suse.cz>
jamborm [Fri, 24 May 2013 15:35:21 +0000 (15:35 +0000)] 
2013-05-24  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/57294
* cgraph.h (ipa_record_stmt_references): Declare.
* cgraphbuild.c (ipa_record_stmt_references): New function.
(build_cgraph_edges): Use ipa_record_stmt_references.
(rebuild_cgraph_edges): Likewise.
(cgraph_rebuild_references): Likewise.
* ipa-prop.c (ipa_modify_call_arguments): Discard references
associated with the old statement and build references from the
newly built statements.
* ipa-ref.c (ipa_remove_stmt_references): New function.
* ipa-ref.h (ipa_remove_stmt_references): Declare.

testsuite/
* gcc.dg/ipa/pr57294.c: New test.

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

12 years ago2013-05-24 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Fri, 24 May 2013 15:30:47 +0000 (15:30 +0000)] 
2013-05-24  Vladimir Makarov  <vmakarov@redhat.com>

        * lra-constraints.c (emit_spill_move): Use smaller mode for
mem-mem moves.
        (check_and_process_move): Consider mem-reg moves for secondary
too.
        (curr_insn_transform): Don't lose insns emitted before for
secondary memory moves.
(inherit_in_ebb): Mark defined reg.  Add usage only if it is not a
reg set up in the current insn.

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

12 years ago2013-05-24 Chung-Ju Wu <jasonwucj@gmail.com>
jasonwucj [Fri, 24 May 2013 15:23:44 +0000 (15:23 +0000)] 
2013-05-24  Chung-Ju Wu  <jasonwucj@gmail.com>

        * download_prerequisites: Download isl and cloog conditionally.

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

12 years agoChange the discriminator assignment algorithm to make it more robust.
dehao [Fri, 24 May 2013 15:04:09 +0000 (15:04 +0000)] 
Change the discriminator assignment algorithm to make it more robust.

2013-05-24  Dehao Chen  <dehao@google.com>

* gcc/testsuite/gcc.dg/debug/dwarf2/discriminator.c: New Testcase.
* gcc/tree-cfg.c (locus_descrim_hasher::hash): Change discrminator
hash function.
(locus_descrim_hasher::equal): Likewise.
(build_gimple_cfg): New discrminator assignmnet algorithm
(make_edges): Likewise.
(next_discriminator_for_locus): Likewise.
(same_line_p): Likewise.
(assign_discriminators): Likewise.
(make_cond_expr_edges): Likewise.
(make_gimple_switch_edges): Likewise.
(make_goto_expr_edges): Likewise.
(make_gimple_asm_edges): Likewise.

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

12 years agoAArch64 - fix invalid assembler in testcase
ibolton [Fri, 24 May 2013 14:59:20 +0000 (14:59 +0000)] 
AArch64 - fix invalid assembler in testcase

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

12 years agoAArch64 - allow insv_imm to handle bigger immediates via masking to 16 bits
ibolton [Fri, 24 May 2013 14:54:15 +0000 (14:54 +0000)] 
AArch64 - allow insv_imm to handle bigger immediates via masking to 16 bits

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

12 years ago PR c++/57391
jason [Fri, 24 May 2013 14:16:45 +0000 (14:16 +0000)] 
PR c++/57391
* semantics.c (cxx_eval_constant_expression): Handle FMA_EXPR.
(cxx_eval_trinary_expression): Rename from cxx_eval_vec_perm_expr.

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

12 years ago2013-05-24 Richard Biener <rguenther@suse.de>
rguenth [Fri, 24 May 2013 12:44:58 +0000 (12:44 +0000)] 
2013-05-24  Richard Biener  <rguenther@suse.de>

PR tree-optimization/57287
* tree-ssa-uninit.c (compute_uninit_opnds_pos): Disregard
all SSA names that occur in abnormal PHIs.

* gcc.dg/pr57287.c: New testcase.

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

12 years ago2013-05-24 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 24 May 2013 10:05:22 +0000 (10:05 +0000)] 
2013-05-24  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/26572
* g++.dg/template/error51.C: New.

2013-05-24  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/25503
* g++.dg/template/bitfield2.C: New.

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

12 years ago * gcc-interface/gigi.h (gnat_init_gcc_fp): Declare.
ebotcazou [Fri, 24 May 2013 09:40:28 +0000 (09:40 +0000)] 
* gcc-interface/gigi.h (gnat_init_gcc_fp): Declare.
* gcc-interface/trans.c (gigi): Call it.
* gcc-interface/misc.c (gnat_init_gcc_fp): New function.

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

12 years ago * gcc-interface/gigi.h (enum inline_status_t): New type.
ebotcazou [Fri, 24 May 2013 09:31:33 +0000 (09:31 +0000)] 
* gcc-interface/gigi.h (enum inline_status_t): New type.
(create_subprog_decl): Adjust prototype.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Procedure>: Adjust
calls to create_subprog_decl.
(get_minimal_subprog_decl): Likewise.
* gcc-interface/trans.c (gigi): Likewise.
(build_raise_check): Likewise.
(establish_gnat_vms_condition_handler): Likewise.
(Compilation_Unit_to_gnu): Likewise.
(gnat_to_gnu): Likewise.
* gcc-interface/utils.c (create_subprog_decl): Change inline_flag
parameter to inline_status and implement for suppressed inlining.

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

12 years agoUse -z ignore instead of --as-needed on Solaris
ro [Fri, 24 May 2013 09:23:33 +0000 (09:23 +0000)] 
Use -z ignore instead of --as-needed on Solaris

* acinclude.m4 (libgfor_cv_have_as_needed): Check for -z ignore, too.
* configure: Regenerate.

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

12 years ago PR tree-ssa/57385
kyukhin [Fri, 24 May 2013 09:11:56 +0000 (09:11 +0000)] 
PR tree-ssa/57385
* gcc.dg/tree-ssa/pr57385.c: New test.

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

12 years agogcc/ChangeLog
kyukhin [Fri, 24 May 2013 09:08:45 +0000 (09:08 +0000)] 
gcc/ChangeLog
        PR tree-ssa/57385
        * tree-ssa-sccvn.c (fully_constant_vn_reference_p): Check
        that index is not negative.

gcc/testsuite/ChangeLog
        PR tree-ssa/57385
        * gcc.dg/tree-ssa/pr57385.c: New test.

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

12 years ago * gcc-interface/ada-tree.h (LOOP_STMT_NO_UNROLL): New define.
ebotcazou [Fri, 24 May 2013 08:52:35 +0000 (08:52 +0000)] 
* gcc-interface/ada-tree.h (LOOP_STMT_NO_UNROLL): New define.
(LOOP_STMT_UNROLL): Likewise.
(LOOP_STMT_NO_VECTOR): Likewise.
(LOOP_STMT_VECTOR): Likewise.
* gcc-interface/trans.c (struct loop_info_d): Replace label field
with stmt field.
(Pragma_to_gnu) <Pragma_Loop_Optimize>: New case.
(Loop_Statement_to_gnu): Save the loop statement onto the stack
instead of the label.
(gnat_to_gnu) <N_Exit_Statement>: Retrieve the loop label.

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

12 years ago * gcc-interface/trans.c: Include diagnostic.h and opts.h.
ebotcazou [Fri, 24 May 2013 08:44:14 +0000 (08:44 +0000)] 
* gcc-interface/trans.c: Include diagnostic.h and opts.h.
(Pragma_to_gnu) <Pragma_Warnings>: New case.

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

12 years ago * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Constify
ebotcazou [Fri, 24 May 2013 08:27:55 +0000 (08:27 +0000)] 
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Constify
a handful of local variables.
For a derived untagged type that renames discriminants, change the type
of the stored discriminants to a subtype with the bounds of the type
of the visible discriminants.
(build_subst_list): Rename local variable.

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

12 years ago PR rtl-optimization/55177
ebotcazou [Fri, 24 May 2013 06:46:11 +0000 (06:46 +0000)] 
PR rtl-optimization/55177
* simplify-rtx.c (simplify_unary_operation_1) <NOT>: Deal with BSWAP.
(simplify_byte_swapping_operation): New.
(simplify_binary_operation_1): Call it for AND, IOR and XOR.
(simplify_relational_operation_1): Deal with BSWAP.

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

12 years agoDaily bump.
gccadmin [Fri, 24 May 2013 00:16:41 +0000 (00:16 +0000)] 
Daily bump.

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

12 years ago * c-typeck.c (convert_for_assignment): Handle references to memory
mrs [Thu, 23 May 2013 21:57:39 +0000 (21:57 +0000)] 
* c-typeck.c (convert_for_assignment): Handle references to memory
spaces better.

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

12 years ago PR c++/57388
jason [Thu, 23 May 2013 20:51:22 +0000 (20:51 +0000)] 
PR c++/57388
* tree.c (build_ref_qualified_type): Clear
FUNCTION_RVALUE_QUALIFIED for lvalue ref-qualifier.

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

12 years agoPR target/56742
rth [Thu, 23 May 2013 19:10:56 +0000 (19:10 +0000)] 
PR target/56742

        * config/i386/i386.c (ix86_seh_fixup_eh_fallthru): New.
        (ix86_reorg): Call it.

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

12 years ago PR target/57379
uros [Thu, 23 May 2013 18:32:12 +0000 (18:32 +0000)] 
PR target/57379
* config/alpha/alpha.md (unspec): Add UNSPEC_XFLT_COMPARE.
* config/alpha/alpha.c (alpha_emit_xfloating_compare): Construct
REG_EQUAL note as UNSPEC_XFLT_COMPARE unspec.

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

12 years ago2013-05-23 Christian Bruel <christian.bruel@st.com>
chrbr [Thu, 23 May 2013 14:20:07 +0000 (14:20 +0000)] 
2013-05-23  Christian Bruel  <christian.bruel@st.com>

        PR debug/57351
        * config/arm/arm.c (arm_dwarf_register_span): Do not use dbx number.

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

12 years ago[AArch64] Remove Usa constraint.
mshawcroft [Thu, 23 May 2013 14:16:50 +0000 (14:16 +0000)] 
[AArch64] Remove Usa constraint.

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

12 years ago[AArch64] Refactor aarch64_mov_operand predicate.
mshawcroft [Thu, 23 May 2013 14:09:39 +0000 (14:09 +0000)] 
[AArch64] Refactor aarch64_mov_operand predicate.

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

12 years ago2013-05-23 Matthias Klose <doko@ubuntu.com>
doko [Thu, 23 May 2013 14:02:14 +0000 (14:02 +0000)] 
2013-05-23  Matthias Klose  <doko@ubuntu.com>

        * include/Makefile.am (bits_headers): Remove ${bits_host_headers}.
        (ext_headers): Remove ${ext_host_headers}.
        (stamp-${host_alias}): Create ${host_builddir}/../ext.
        (stamp-host): Link ${bits_host_headers} and ${ext_host_headers}.
        (install-headers): Install ${bits_host_headers} and ${ext_host_headers}.
        * include/Makefile.in: Regenerate.
        * include/ext/random: Include ext/opt_random.h.

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

12 years agoFixed ChangeLog dates.
jamborm [Thu, 23 May 2013 13:45:17 +0000 (13:45 +0000)] 
Fixed ChangeLog dates.

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

12 years ago[AArch64] Support for CLZ
mshawcroft [Thu, 23 May 2013 13:36:41 +0000 (13:36 +0000)] 
[AArch64] Support for CLZ

2013-05-23  Vidya Praveen <vidyapraveen@arm.com>

        * config/aarch64/aarch64-simd.md (clzv4si2): Support for CLZ
          instruction (AdvSIMD).
        * config/aarch64/aarch64-builtins.c
          (aarch64_builtin_vectorized_function): Handler for BUILT_IN_CLZ.
        * config/aarch64/aarch-simd-builtins.def: Entry for CLZ.

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

12 years ago2013-05-22 Martin Jambor <mjambor@suse.cz>
jamborm [Thu, 23 May 2013 13:20:41 +0000 (13:20 +0000)] 
2013-05-22  Martin Jambor  <mjambor@suse.cz>

PR middle-end/57347
* tree.h (contains_bitfld_component_ref_p): Declare.
* tree-sra.c (contains_bitfld_comp_ref_p): Move...
* tree.c (contains_bitfld_component_ref_p): ...here.  Adjust its caller.
* ipa-prop.c (determine_known_aggregate_parts): Check that LHS does
not access a bit-field.  Assert all final offsets are byte-aligned.

testsuite/
* gcc.dg/ipa/pr57347.c: New test.

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

12 years ago * inclhack.def (complier_h_tradcpp): New.
kyukhin [Thu, 23 May 2013 12:52:01 +0000 (12:52 +0000)] 
    * inclhack.def (complier_h_tradcpp): New.
        * fixincl.x: Rebuilt.
        * tests/base/linux/compiler.h: New.

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

12 years ago2013-05-23 Richard Biener <rguenther@suse.de>
rguenth [Thu, 23 May 2013 12:23:59 +0000 (12:23 +0000)] 
2013-05-23  Richard Biener  <rguenther@suse.de>

PR tree-optimization/57380
* tree-ssa-phiprop.c (propagate_with_phi): Do not require at
least one invariant or re-used load.
* passes.c (init_optimization_passes): Move pass_phiprop before
pass_forwprop.

* g++.dg/tree-ssa/pr57380.C: New testcase.

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

12 years ago[AArch64] Fix possible wrong code generation when comparing DImode values.
jgreenhalgh [Thu, 23 May 2013 10:18:19 +0000 (10:18 +0000)] 
[AArch64] Fix possible wrong code generation when comparing DImode values.

gcc/
* config/aarch64/aarch64-simd.md
(aarch64_cm<optab>di): Add clobber of CC_REGNUM to unsplit pattern.

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

12 years ago2013-05-23 Richard Biener <rguenther@suse.de>
rguenth [Thu, 23 May 2013 10:08:33 +0000 (10:08 +0000)] 
2013-05-23  Richard Biener  <rguenther@suse.de>

PR middle-end/57381
* fold-const.c (operand_equal_p): Compare FIELD_DECLs with
OEP_CONSTANT_ADDRESS_OF retained.

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

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

12 years ago PR middle-end/57344
jakub [Thu, 23 May 2013 09:17:34 +0000 (09:17 +0000)] 
PR middle-end/57344
* expmed.c (store_split_bit_field): If op0 is a REG or
SUBREG of a REG, don't lower unit.  Handle unit not being
always BITS_PER_WORD.

* gcc.c-torture/execute/pr57344-1.c: New test.
* gcc.c-torture/execute/pr57344-2.c: New test.
* gcc.c-torture/execute/pr57344-3.c: New test.
* gcc.c-torture/execute/pr57344-4.c: New test.

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

12 years ago2013-05-23 Richard Biener <rguenther@suse.de>
rguenth [Thu, 23 May 2013 08:37:24 +0000 (08:37 +0000)] 
2013-05-23  Richard Biener  <rguenther@suse.de>

PR rtl-optimization/57341
* ira.c (validate_equiv_mem_from_store): Use anti_dependence
instead of true_dependence.

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

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

12 years agoadd missing file
meissner [Thu, 23 May 2013 03:55:04 +0000 (03:55 +0000)] 
add missing file

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

12 years ago PR c++/56930
jason [Thu, 23 May 2013 03:47:35 +0000 (03:47 +0000)] 
PR c++/56930
* call.c (convert_like_real): Use cp_convert_and_check.
* cvt.c (cp_convert_and_check): Use maybe_constant_value.
* semantics.c (cxx_eval_constant_expression): Handle LTGT_EXPR.
(potential_constant_expression_1): Handle OMP_ATOMIC*.

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

12 years ago PR c++/56915
jason [Thu, 23 May 2013 03:46:44 +0000 (03:46 +0000)] 
PR c++/56915
* semantics.c (maybe_add_lambda_conv_op): Give up if the call op
isn't defined.

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

12 years agogcc/
dmalcolm [Thu, 23 May 2013 02:19:36 +0000 (02:19 +0000)] 
gcc/
* bb-reorder.c (branch_threshold): make const
(exec_threshold): ditto

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

12 years agoDaily bump.
gccadmin [Thu, 23 May 2013 00:16:39 +0000 (00:16 +0000)] 
Daily bump.

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

12 years ago/cp
paolo [Wed, 22 May 2013 22:45:55 +0000 (22:45 +0000)] 
/cp
2013-05-22  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57352
* parser.c (cp_parser_conversion_type_id): Set up
parser->type_definition_forbidden_message before calling
cp_parser_type_specifier_seq.

/testsuite
2013-05-22  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57352
* g++.dg/parse/crash62.C: New.

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

12 years ago2013-05-22 Mark Mitchell <mark@codesourcery.com>
sandra [Wed, 22 May 2013 21:25:59 +0000 (21:25 +0000)] 
2013-05-22  Mark Mitchell  <mark@codesourcery.com>
    Sandra Loosemore  <sandra@codesourcery.com>

libjava/
* configure.ac (dbexecdir): Base on $(toolexeclibdir), not
$(libdir).
* Makefile.am (pkgconfigdir): Likewise.
* configure: Regenerated.
* Makefile.in: Regenerated.
* gcj/Makefile.in: Regenerated.
* include/Makefile.in: Regenerated.
* testsuite/Makefile.in: Regenerated.

libjava/classpath/
* configure.ac: Define host_noncanonical and target_noncanonical.
Support --enable-version-specific-runtime-libs.
* m4/acinclude.m4 (CLASSPATH_TOOLEXECLIBDIR): Match libjava
definition of toolexeclibdir.
* configure: Regenerated.
* Makefile.in: Regenerated.
* doc/api/Makefile.in: Regenerated.
* doc/Makefile.in: Regenerated.
* examples/Makefile.in: Regenerated.
* external/jsr166/Makefile.in: Regenerated.
* external/Makefile.in: Regenerated.
* external/relaxngDatatype/Makefile.in: Regenerated.
* external/sax/Makefile.in: Regenerated.
* external/w3c_dom/Makefile.in: Regenerated.
* include/Makefile.in: Regenerated.
* lib/Makefile.in: Regenerated.
* native/fdlibm/Makefile.in: Regenerated.
* native/jawt/Makefile.in: Regenerated.
* native/jni/Makefile.in: Regenerated.
* native/jni/gconf-peer/Makefile.in: Regenerated.
* native/jni/gstreamer-peer/Makefile.in: Regenerated.
* native/jni/gtk-peer/Makefile.in: Regenerated.
* native/jni/java-io/Makefile.in: Regenerated.
* native/jni/java-lang/Makefile.in: Regenerated.
* native/jni/java-math/Makefile.in: Regenerated.
* native/jni/java-net/Makefile.in: Regenerated.
* native/jni/java-nio/Makefile.in: Regenerated.
* native/jni/java-util/Makefile.in: Regenerated.
* native/jni/Makefile.in: Regenerated.
* native/jni/midi-alsa/Makefile.in: Regenerated.
* native/jni/midi-dssi/Makefile.in: Regenerated.
* native/jni/native-lib/Makefile.in: Regenerated.
* native/jni/qt-peer/Makefile.in: Regenerated.
* native/jni/xmlj/Makefile.in: Regenerated.
* native/Makefile.in: Regenerated.
* native/plugin/Makefile.in: Regenerated.
* resource/Makefile.in: Regenerated.
* scripts/Makefile.in: Regenerated.
* tools/Makefile.in: Regenerated.

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

12 years ago * config.host (powerpc-*-elf*): Add rs6000/t-savresfgpr to tmake_file.
ebotcazou [Wed, 22 May 2013 20:44:16 +0000 (20:44 +0000)] 
* config.host (powerpc-*-elf*): Add rs6000/t-savresfgpr to tmake_file.
(powerpc-wrs-vxworks): Likewise.

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

12 years ago[gcc]
meissner [Wed, 22 May 2013 20:14:29 +0000 (20:14 +0000)] 
[gcc]
2013-05-22  Michael Meissner  <meissner@linux.vnet.ibm.com>
    Pat Haugen <pthaugen@us.ibm.com>
    Peter Bergner <bergner@vnet.ibm.com>

* doc/extend.texi (PowerPC AltiVec/VSX Built-in Functions): Add
documentation for the power8 crypto builtins.

* config/rs6000/t-rs6000 (MD_INCLUDES): Add crypto.md.

* config/rs6000/rs6000-builtin.def (BU_P8V_AV_1): Add support
macros for defining power8 builtin functions.
(BU_P8V_AV_2): Likewise.
(BU_P8V_AV_P): Likewise.
(BU_P8V_VSX_1): Likewise.
(BU_P8V_OVERLOAD_1): Likewise.
(BU_P8V_OVERLOAD_2): Likewise.
(BU_CRYPTO_1): Likewise.
(BU_CRYPTO_2): Likewise.
(BU_CRYPTO_3): Likewise.
(BU_CRYPTO_OVERLOAD_1): Likewise.
(BU_CRYPTO_OVERLOAD_2): Likewise.
(XSCVSPDP): Fix typo, point to the correct instruction.
(VCIPHER): Add power8 crypto builtins.
(VCIPHERLAST): Likewise.
(VNCIPHER): Likewise.
(VNCIPHERLAST): Likewise.
(VPMSUMB): Likewise.
(VPMSUMH): Likewise.
(VPMSUMW): Likewise.
(VPERMXOR_V2DI): Likewise.
(VPERMXOR_V4SI: Likewise.
(VPERMXOR_V8HI: Likewise.
(VPERMXOR_V16QI: Likewise.
(VSHASIGMAW): Likewise.
(VSHASIGMAD): Likewise.
(VPMSUM): Likewise.
(VPERMXOR): Likewise.
(VSHASIGMA): Likewise.

* config/rs6000/rs6000-c.c (rs6000_target_modify_macros): Define
__CRYPTO__ if the crypto instructions are available.
(altivec_overloaded_builtins): Add support for overloaded power8
builtins.

* config/rs6000/rs6000.c (rs6000_expand_ternop_builtin): Add
support for power8 crypto builtins.
(builtin_function_type): Likewise.
(altivec_init_builtins): Add support for builtins that take vector
long long (V2DI) arguments.

* config/rs6000/crypto.md: New file, define power8 crypto
instructions.

2013-05-22  Michael Meissner  <meissner@linux.vnet.ibm.com>
    Pat Haugen <pthaugen@us.ibm.com>
    Peter Bergner <bergner@vnet.ibm.com>

* doc/invoke.texi (Option Summary): Add power8 options.
(RS/6000 and PowerPC Options): Likewise.

* doc/md.texi (PowerPC and IBM RS6000 constraints): Update to use
constraints.md instead of rs6000.h.  Reorder w* constraints.  Add
wm, wn, wr documentation.

* gcc/config/rs6000/constraints.md (wm): New constraint for VSX
registers if direct move instructions are enabled.
(wn): New constraint for no registers.
(wq): New constraint for quad word even GPR registers.
(wr): New constraint if 64-bit instructions are enabled.
(wv): New constraint if power8 vector instructions are enabled.
(wQ): New constraint for quad word memory locations.

* gcc/config/rs6000/predicates.md (const_0_to_15_operand): New
constraint for 0..15 for crypto instructions.
(gpc_reg_operand): If VSX allow registers in VSX registers as well
as GPR and floating point registers.
(int_reg_operand): New predicate to match only GPR registers.
(base_reg_operand): New predicate to match base registers.
(quad_int_reg_operand): New predicate to match even GPR registers
for quad memory operations.
(vsx_reg_or_cint_operand): New predicate to allow vector logical
operations in both GPR and VSX registers.
(quad_memory_operand): New predicate for quad memory operations.
(reg_or_indexed_operand): New predicate for direct move support.

* gcc/config/rs6000/rs6000-cpus.def (ISA_2_5_MASKS_EMBEDDED):
Inherit from ISA_2_4_MASKS, not ISA_2_2_MASKS.
(ISA_2_7_MASKS_SERVER): New mask for ISA 2.07 (i.e. power8).
(POWERPC_MASKS): Add power8 options.
(power8 cpu): Use ISA_2_7_MASKS_SERVER instead of specifying the
various options.

* gcc/config/rs6000/rs6000-c.c (rs6000_target_modify_macros):
Define _ARCH_PWR8 and __POWER8_VECTOR__ for power8.

* gcc/config/rs6000/rs6000.opt (-mvsx-timode): Add documentation.
(-mpower8-fusion): New power8 options.
(-mpower8-fusion-sign): Likewise.
(-mpower8-vector): Likewise.
(-mcrypto): Likewise.
(-mdirect-move): Likewise.
(-mquad-memory): Likewise.

* gcc/config/rs6000/rs6000.c (power8_cost): Initial definition for
power8.
(rs6000_hard_regno_mode_ok): Make PTImode only match even GPR
registers.
(rs6000_debug_reg_print): Print the base register class if
-mdebug=reg.
(rs6000_debug_vector_unit): Add p8_vector.
(rs6000_debug_reg_global): If -mdebug=reg, print power8 constraint
definitions.  Also print fusion state.
(rs6000_init_hard_regno_mode_ok): Set up power8 constraints.
(rs6000_builtin_mask_calculate): Add power8 builtin support.
(rs6000_option_override_internal): Add support for power8.
(rs6000_common_init_builtins): Add debugging for skipped builtins
if -mdebug=builtin.
(rs6000_adjust_cost): Add power8 support.
(rs6000_issue_rate): Likewise.
(insn_must_be_first_in_group): Likewise.
(insn_must_be_last_in_group): Likewise.
(force_new_group): Likewise.
(rs6000_register_move_cost): Likewise.
(rs6000_opt_masks): Likewise.

* config/rs6000/rs6000.h (ASM_CPU_POWER8_SPEC): If we don't have a
power8 capable assembler, default to power7 options.
(TARGET_DIRECT_MOVE): Likewise.
(TARGET_CRYPTO): Likewise.
(TARGET_P8_VECTOR): Likewise.
(VECTOR_UNIT_P8_VECTOR_P): Define power8 vector support.
(VECTOR_UNIT_VSX_OR_P8_VECTOR_P): Likewise.
(VECTOR_MEM_P8_VECTOR_P): Likewise.
(VECTOR_MEM_VSX_OR_P8_VECTOR_P): Likewise.
(VECTOR_MEM_ALTIVEC_OR_VSX_P): Likewise.
(TARGET_XSCVDPSPN): Likewise.
(TARGET_XSCVSPDPN): Likewsie.
(TARGET_SYNC_HI_QI): Likewise.
(TARGET_SYNC_TI): Likewise.
(MASK_CRYPTO): Likewise.
(MASK_DIRECT_MOVE): Likewise.
(MASK_P8_FUSION): Likewise.
(MASK_P8_VECTOR): Likewise.
(REG_ALLOC_ORDER): Move fr13 to be lower in priority so that the
TFmode temporary used by some of the direct move instructions to
get two FP temporary registers does not force creation of a stack
frame.
(VLOGICAL_REGNO_P): Allow vector logical operations in GPRs.
(MODES_TIEABLE_P): Move the VSX tests above the Altivec tests so
that any VSX registers are tieable, even if they are also an
Altivec vector mode.
(r6000_reg_class_enum): Add wm, wr, wv constraints.
(RS6000_BTM_P8_VECTOR): Power8 builtin support.
(RS6000_BTM_CRYPTO): Likewise.
(RS6000_BTM_COMMON): Likewise.

* config/rs6000/rs6000.md (cpu attribute): Add power8.
* config/rs6000/rs6000-opts.h (PROCESSOR_POWER8): Likewise.
(enum rs6000_vector): Add power8 vector support.

[gcc/testsuite]
2013-05-22  Michael Meissner  <meissner@linux.vnet.ibm.com>
    Pat Haugen <pthaugen@us.ibm.com>
    Peter Bergner <bergner@vnet.ibm.com>

* gcc.target/powerpc/crypto-builtin-1.c: New file, test for power8
crypto builtins.

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

12 years ago2013-05-22 Tobias Burnus <burnus@net-b.de>
burnus [Wed, 22 May 2013 19:24:29 +0000 (19:24 +0000)] 
2013-05-22  Tobias Burnus  <burnus@net-b.de>

        * resolve.c (get_temp_from_expr): Change mangling to
        start always with a _.

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

12 years ago2013-05-22 Tobias Burnus <burnus@net-b.de>
burnus [Wed, 22 May 2013 19:14:51 +0000 (19:14 +0000)] 
2013-05-22  Tobias Burnus  <burnus@net-b.de>

        * resolve.c (get_temp_from_expr): Fix temp var mangling.

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

12 years agoFix PR target/57340 and additionally for PR target/19599.
ramana [Wed, 22 May 2013 15:26:20 +0000 (15:26 +0000)] 
Fix PR target/57340 and additionally for PR target/19599.

2013-05-22  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

PR target/19599
PR target/57340
* config/arm/arm.c (any_sibcall_uses_r3): Rename to ..
(any_sibcall_could_use_r3): this and handle indirect calls.
(arm_get_frame_offsets): Rename use of any_sibcall_uses_r3.

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