platform/upstream/linaro-gcc.git
10 years ago2013-12-19 Dominik Vogt <vogt@linux.vnet.ibm.com>
krebbel [Thu, 19 Dec 2013 12:00:43 +0000 (12:00 +0000)]
2013-12-19  Dominik Vogt  <vogt@linux.vnet.ibm.com>
    Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/s390.c (s390_hotpatch_trampoline_halfwords_default): New
constant
(s390_hotpatch_trampoline_halfwords_max): New constant
(s390_hotpatch_trampoline_halfwords): New static variable
(get_hotpatch_attribute): New function
(s390_handle_hotpatch_attribute): New function
(s390_attribute_table): New target specific attribute table to implement
the hotpatch attribute
(s390_option_override): Parse hotpatch options
(s390_function_num_hotpatch_trampoline_halfwords): New function
(s390_can_inline_p): Implement target hook to
suppress hotpatching for explicitly inlined functions
(s390_asm_output_function_label): Generate hotpatch prologue
(TARGET_ATTRIBUTE_TABLE): Define to implement target attribute table
(TARGET_CAN_INLINE_P): Define to implement target hook
* config/s390/s390.opt (mhotpatch): New options -mhotpatch, -mhotpatch=
* config/s390/s390-protos.h (s390_asm_output_function_label): Add
prototype
* config/s390/s390.h (ASM_OUTPUT_FUNCTION_LABEL): Target specific
function label generation for hotpatching
(FUNCTION_BOUNDARY): Align functions to eight bytes
* doc/extend.texi: Document hotpatch attribute
* doc/invoke.texi: Document -mhotpatch option

2013-12-19  Dominik Vogt  <vogt@linux.vnet.ibm.com>
    Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* gcc/testsuite/gcc.target/s390/hotpatch-1.c: New test
* gcc/testsuite/gcc.target/s390/hotpatch-2.c: New test
* gcc/testsuite/gcc.target/s390/hotpatch-3.c: New test
* gcc/testsuite/gcc.target/s390/hotpatch-4.c: New test
* gcc/testsuite/gcc.target/s390/hotpatch-5.c: New test
* gcc/testsuite/gcc.target/s390/hotpatch-6.c: New test
* gcc/testsuite/gcc.target/s390/hotpatch-7.c: New test
* gcc/testsuite/gcc.target/s390/hotpatch-8.c: New test
* gcc/testsuite/gcc.target/s390/hotpatch-9.c: New test
* gcc/testsuite/gcc.target/s390/hotpatch-10.c: New test
* gcc/testsuite/gcc.target/s390/hotpatch-11.c: New test
* gcc/testsuite/gcc.target/s390/hotpatch-12.c: New test
* gcc/testsuite/gcc.target/s390/hotpatch-compile-1.c: New test
* gcc/testsuite/gcc.target/s390/hotpatch-compile-2.c: New test
* gcc/testsuite/gcc.target/s390/hotpatch-compile-3.c: New test
* gcc/testsuite/gcc.target/s390/hotpatch-compile-4.c: New test
* gcc/testsuite/gcc.target/s390/hotpatch-compile-5.c: New test
* gcc/testsuite/gcc.target/s390/hotpatch-compile-6.c: New test
* gcc/testsuite/gcc.target/s390/hotpatch-compile-7.c: New test

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

10 years agoEnable TARGET_LOOP_UNROLL_ADJUST for bdver3/bdver4
gganesh [Thu, 19 Dec 2013 11:04:43 +0000 (11:04 +0000)]
Enable TARGET_LOOP_UNROLL_ADJUST for bdver3/bdver4

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

10 years ago2013-12-19 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
ktkachov [Thu, 19 Dec 2013 10:33:15 +0000 (10:33 +0000)]
2013-12-19  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

    * c-c++-common/cilk-plus/SE/ef_error.c: Add fopenmp effective
    target check.

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

10 years ago * config/i386/i386.c (ix86_parse_stringop_strategy_string): Remove
mpolacek [Thu, 19 Dec 2013 10:25:34 +0000 (10:25 +0000)]
* config/i386/i386.c (ix86_parse_stringop_strategy_string): Remove
variable alg.  Use index variable i directly.

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

10 years ago * print-tree.c (print_node) <case tcc_type>: Print no_force_blk_flag
ebotcazou [Thu, 19 Dec 2013 09:13:13 +0000 (09:13 +0000)]
* print-tree.c (print_node) <case tcc_type>: Print no_force_blk_flag
for all types.

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

10 years ago2013-12-19 Monk Chiang <sh.chiang04@gmail.com>
jasonwucj [Thu, 19 Dec 2013 08:32:20 +0000 (08:32 +0000)]
2013-12-19  Monk Chiang  <sh.chiang04@gmail.com>

gcc/
* common/config/nds32/nds32-common.c (TARGET_DEFAULT_TARGET_FLAGS):
Consider TARGET_CPU_DEFAULT settings.

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

10 years agoDaily bump.
gccadmin [Thu, 19 Dec 2013 00:16:30 +0000 (00:16 +0000)]
Daily bump.

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

10 years ago2013-12-18 Steven G. Kargl <kargl@gcc.gnu.org>
kargl [Wed, 18 Dec 2013 23:41:50 +0000 (23:41 +0000)]
2013-12-18  Steven G. Kargl  <kargl@gcc.gnu.org>

* io/read.c (read_f): Convert assert to runtime error.

2013-12-18  Steven G. Kargl  <kargl@gcc.gnu.org>

* gfortran.dg/io_err_1.f90: New test.

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

10 years ago2013-12-18 Janus Weil <janus@gcc.gnu.org>
janus [Wed, 18 Dec 2013 22:00:53 +0000 (22:00 +0000)]
2013-12-18  Janus Weil  <janus@gcc.gnu.org>

PR fortran/59493
* gfortran.h (gfc_find_intrinsic_vtab): Removed prototype.
(gfc_find_vtab): New prototype.
* class.c (gfc_find_intrinsic_vtab): Rename to 'find_intrinsic_vtab' and
make static. Minor modifications.
(gfc_find_vtab): New function.
(gfc_class_initializer): Use new function 'gfc_find_vtab'.
* check.c (gfc_check_move_alloc): Ditto.
* expr.c (gfc_check_pointer_assign): Ditto.
* interface.c (compare_actual_formal): Ditto.
* resolve.c (resolve_allocate_expr, resolve_select_type): Ditto.
* trans-expr.c (gfc_conv_intrinsic_to_class, gfc_trans_class_assign):
Ditto.
* trans-intrinsic.c (conv_intrinsic_move_alloc): Ditto.
* trans-stmt.c (gfc_trans_allocate): Ditto.

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

10 years ago[AArch64 3/3 big.LITTLE] Add support for -mcpu=cortex-a57.cortex-a53
jgreenhalgh [Wed, 18 Dec 2013 19:27:27 +0000 (19:27 +0000)]
[AArch64 3/3 big.LITTLE] Add support for -mcpu=cortex-a57.cortex-a53

gcc/

* config/aarch64/aarch64-cores.def: Add support for
-mcpu=cortex-a57.cortex-a53.
* config/aarch64/aarch64-tune.md: Regenerate.
* doc/invoke.texi: Document -mcpu=cortex-a57.cortex-a53.

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

10 years ago[AArch64 2/3 big.LITTLE] Allow tuning parameters without unique tuning targets.
jgreenhalgh [Wed, 18 Dec 2013 19:25:45 +0000 (19:25 +0000)]
[AArch64 2/3 big.LITTLE] Allow tuning parameters without unique tuning targets.
gcc/

* config/aarch64/aarch64-cores.def: Add new column for
SCHEDULER_IDENT.
* config/aarch64/aarch64-opts.h (AARCH64_CORE): Handle
SCHEDULER_IDENT.
* config/aarch64/aarch64.c (AARCH64_CORE): Handle
SCHEDULER_IDENT.
(aarch64_parse_cpu): mcpu implies a default value for mtune.
* config/aarch64/aarch64.h (AARCH64_CORE): Handle
SCHEDULER_IDENT.

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

10 years ago[AArch64 1/3 big.LITTLE] Driver rewriting of big.LITTLE names.
jgreenhalgh [Wed, 18 Dec 2013 19:21:45 +0000 (19:21 +0000)]
[AArch64 1/3 big.LITTLE] Driver rewriting of big.LITTLE names.

gcc/

* common/config/aarch64/aarch64-common.c
(aarch64_rewrite_selected_cpu): New.
(aarch64_rewrite_mcpu): New.
* config/aarch64/aarch64-protos.h
(aarch64_rewrite_selected_cpu): New.
* config/aarch64/aarch64.h (BIG_LITTLE_SPEC): New.
(BIG_LITTLE_SPEC_FUNCTIONS): Likewise.
(ASM_CPU_SPEC): Likewise.
(EXTRA_SPEC_FUNCTIONS): Likewise.
(EXTRA_SPECS): Likewise.
(ASM_SPEC): Likewise.
* config/aarch64/aarch64.c (aarch64_start_file): Rewrite target
CPU name.

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

10 years agoForgot to add a changelog entry for previous commit. Added here.
bviyer [Wed, 18 Dec 2013 19:04:04 +0000 (19:04 +0000)]
Forgot to add a changelog entry for previous commit. Added here.

gcc/cp/ChangeLog.
2013-12-18  Balaji V. Iyer  <balaji.v.iyer@intel.com>

        * parser.c (cp_parser_cilk_simd_clause_name): Changed cilk_clause_name
        to omp_clause_name.

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

10 years agoAdded support for Cilk Plus SIMD-enabled function for C.
bviyer [Wed, 18 Dec 2013 19:00:21 +0000 (19:00 +0000)]
Added support for Cilk Plus SIMD-enabled function for C.
+++ gcc/ChangeLog
+2013-12-18  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       * omp-low.c (simd_clone_clauses_extract): Replaced the string
+       "cilk simd elemental" with "cilk simd function."
+       * config/i386/i386.c (ix86_simd_clone_compute_vecsize_and_simdlen):
+       Removed a carriage-return from a warning string.
+
+++ gcc/c-family/ChangeLog
+2013-12-18  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       * c-common.c (c_common_attribute_table): Added "cilk simd function"
+       attribute.
+       * c-pragma.h (enum pragma_cilk_clause): Remove.
+       (enum pragma_omp_clause):  Added the following fields:
+       PRAGMA_CILK_CLAUSE_NOMASK, PRAGMA_CILK_CLAUSE_MASK,
+       PRAGMA_CILK_CLAUSE_VECTORLENGTH, PRAGMA_CILK_CLAUSE_NONE,
+       PRAGMA_CILK_CLAUSE_LINEAR, PRAGMA_CILK_CLAUSE_PRIVATE,
+       PRAGMA_CILK_CLAUSE_FIRSTPRIVATE, PRAGMA_CILK_CLAUSE_LASTPRIVATE,
+       PRAGMA_CILK_CLAUSE_UNIFORM.
+
+

+++ gcc/c/ChangeLog
+2013-12-18  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       * c-parser.c (struct c_parser::cilk_simd_fn_tokens): Added new field.
+       (c_parser_declaration_or_fndef): Added a check if cilk_simd_fn_tokens
+       field in parser is not empty.  If not-empty, call the function
+       c_parser_finish_omp_declare_simd.
+       (c_parser_cilk_clause_vectorlength): Modified function to be shared
+       between SIMD-enabled functions and #pragma simd.  Added new parameter.
+       (c_parser_cilk_all_clauses): Modified the usage of the function
+       c_parser_cilk_clause_vectorlength as mentioned above.
+       (c_parser_cilk_simd_fn_vector_attrs): New function.
+       (c_finish_cilk_simd_fn_tokens): Likewise.
+       (is_cilkplus_vector_p): Likewise.
+       (c_parser_omp_clause_name): Added checking for "vectorlength,"
+       "nomask," and "mask" strings in clause name.
+       (c_parser_omp_all_clauses): Added 3 new case statements:
+       PRAGMA_CILK_CLAUSE_VECTORLENGTH, PRAGMA_CILK_CLAUSE_MASK and
+       PRAGMA_CILK_CLAUSE_NOMASK.
+       (c_parser_attributes): Added a cilk_simd_fn_tokens parameter.  Added a
+       check for vector attribute and if so call the function
+       c_parser_cilk_simd_fn_vector_attrs.  Also, when Cilk plus is enabled,
+       called the function c_finish_cilk_simd_fn_tokens.
+       (c_finish_omp_declare_simd): Added a check if cilk_simd_fn_tokens
in
+       parser field is non-empty.  If so, parse them as you would parse
+       the omp declare simd pragma.
+       (c_parser_omp_clause_linear): Added a new bool parm. is_cilk_simd_fn.
+       Added a check when step is a parameter and flag it as error.
+       (CILK_SIMD_FN_CLAUSE_MASK): New #define.
+       (c_parser_cilk_clause_name): Changed pragma_cilk_clause to
+       pragma_omp_clause.
+

+++ gcc/testsuite/ChangeLog
+2013-12-18  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       * c-c++-common/cilk-plus/SE/ef_test.c: New test.
+       * c-c++-common/cilk-plus/SE/ef_test2.c: Likewise.
+       * c-c++-common/cilk-plus/SE/vlength_errors.c: Likewise.
+       * c-c++-common/cilk-plus/SE/ef_error.c: Likewise.
+       * c-c++-common/cilk-plus/SE/ef_error2.c: Likewise.
+       * c-c++-common/cilk-plus/SE/ef_error3.c: Likewise.
+       * gcc.dg/cilk-plus/cilk-plus.exp: Added calls for the above tests.
+

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

10 years ago * pt_BR.po: New.
jsm28 [Wed, 18 Dec 2013 18:15:09 +0000 (18:15 +0000)]
* pt_BR.po: New.

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

10 years ago * passes.c (execute_function_dump): Set graph_dump_initialized
aldyh [Wed, 18 Dec 2013 17:38:07 +0000 (17:38 +0000)]
* passes.c (execute_function_dump): Set graph_dump_initialized
appropriately.
(pass_init_dump_file): Similarly.
(execute_one_pass): Pass new argument to do_per_function.
* tree-pass.h (class opt_pass): New field graph_dump_initialized.

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

10 years ago * doc/tree-ssa.texi (SSA Operands): Remove reference to
aldyh [Wed, 18 Dec 2013 17:32:07 +0000 (17:32 +0000)]
* doc/tree-ssa.texi (SSA Operands): Remove reference to
SSA_OP_VMAYUSE.
Synchronize SSA_OP* definitions with source.
* ssa-iterators.h: Fix comment for FOR_EACH_IMM_USE_STMT.
Add not to SSA_OP* macro definitions.

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

10 years ago PR target/59539
jakub [Wed, 18 Dec 2013 16:50:06 +0000 (16:50 +0000)]
PR target/59539
* config/i386/sse.md
(<sse>_loadu<ssemodesuffix><avxsizesuffix><mask_name>,
<sse2_avx_avx512f>_loaddqu<mode><mask_name>): New expanders,
prefix existing define_insn names with *.

* gcc.target/i386/pr59539-1.c: New test.
* gcc.target/i386/pr59539-2.c: New test.

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

10 years ago * gcc.dg/pr32912-2.c: Fix for 16-bit targets.
nickc [Wed, 18 Dec 2013 15:29:47 +0000 (15:29 +0000)]
* gcc.dg/pr32912-2.c: Fix for 16-bit targets.

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

10 years ago * config/arm/arm.c (arm_expand_epilogue_apcs_frame): Fix thinko.
ebotcazou [Wed, 18 Dec 2013 15:15:03 +0000 (15:15 +0000)]
* config/arm/arm.c (arm_expand_epilogue_apcs_frame): Fix thinko.

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

10 years ago2013-12-18 James Greenhalgh <james.greenhalgh@arm.com>
ktkachov [Wed, 18 Dec 2013 13:25:58 +0000 (13:25 +0000)]
2013-12-18  James Greenhalgh  <james.greenhalgh@arm.com>
              Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* config/arm/t-aprofile: Add cortex-a15.cortex-a7, cortex-a12,
cortex-a57, cortex-a57.cortex-a53.

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

10 years ago PR debug/59418
ebotcazou [Wed, 18 Dec 2013 10:34:00 +0000 (10:34 +0000)]
PR debug/59418
* dwarf2cfi.c (dwarf2out_frame_debug_cfa_offset): Fix comment and tidy.
(dwarf2out_frame_debug_cfa_restore): Handle TARGET_DWARF_REGISTER_SPAN.
(dwarf2out_frame_debug_expr): Tidy.

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

10 years agoFix PR number.
hubicka [Wed, 18 Dec 2013 08:34:29 +0000 (08:34 +0000)]
Fix PR number.

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

10 years ago * config/i386/sse.md (*fma_fmadd_<mode>): Extend to support masking.
kyukhin [Wed, 18 Dec 2013 08:18:22 +0000 (08:18 +0000)]
    * config/i386/sse.md (*fma_fmadd_<mode>): Extend to support masking.
        (*fma_fmsub_<mode>): Ditto.
        (*fma_fnmadd_<mode>): Ditto.
        (*fma_fnmsub_<mode>): Ditto.
        (*fma_fmaddsub_<mode>): Ditto.
        (*fma_fmsubadd_<mode>): Ditto.
        (avx512f_vternlog<mode>): Ditto.
        (avx512f_fixupimm<mode>): Ditto.
        (avx512f_sfixupimm<mode>): Ditto.
        (avx512f_vpermi2var<mode>3): Ditto.
        (avx512f_vpermt2var<mode>3): Ditto.
        (avx512f_fmaddsub_<mode>_maskz): New.
        (avx512f_vternlog<mode>_maskz): Ditto.
        (avx512f_fixupimm<mode>_maskz): Ditto.
        (avx512f_sfixupimm<mode>_maskz): Ditto.
        (avx512f_vpermi2var<mode>3_maskz): Ditto.
        (avx512f_vpermt2var<mode>3_maskz): Ditto.
        (avx512f_expand<mode>_maskz): Ditto.
        * config/i386/subst.md (sd_maskz_name): Ditto.
        (sd_mask_op4): Ditto.
        (sd_mask_op5): Ditto.
        (sd_mask_codefor): Ditto.
        (sd_mask_mode512bit_condition): Ditto.
        (sd): Ditto.

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

10 years ago * config/i386/sse.md (avx512f_cmp<mode>3): Extend to support masking.
kyukhin [Wed, 18 Dec 2013 07:45:29 +0000 (07:45 +0000)]
    * config/i386/sse.md (avx512f_cmp<mode>3): Extend to support masking.
        (avx512f_ucmp<mode>3): Ditto.
        (avx512f_eq<mode>3): Ditto.
        (avx512f_gt<mode>3): Ditto.
        (avx512f_testm<mode>3): Ditto.
        (avx512f_testnm<mode>3): Ditto.
        * config/i386/subst.md (SUBST_S): New.
        (mask_scalar_merge_name): Ditto.
        (mask_scalar_merge_operand3): Ditto.
        (mask_scalar_merge_operand4): Ditto.
        (mask_scalar_merge): Ditto.

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

10 years agoDaily bump.
gccadmin [Wed, 18 Dec 2013 00:16:52 +0000 (00:16 +0000)]
Daily bump.

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

10 years ago PR middle-end/35535
hubicka [Tue, 17 Dec 2013 23:43:22 +0000 (23:43 +0000)]
PR middle-end/35535
* gimple-fold.c (fold_gimple_assign): Attempt to devirtualize
OBJ_TYPE_REF.
(gimple_fold_stmt_to_constant_1): Bypass OBJ_TYPE_REF wrappers.

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

10 years ago PR middle-end/35535
hubicka [Tue, 17 Dec 2013 23:41:41 +0000 (23:41 +0000)]
PR middle-end/35535
* tree-vrp.c (extract_range_from_unary_expr_1): Handle OBJ_TYPE_REF.

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

10 years ago2013-12-17 Teresa Johnson <tejohnson@google.com>
tejohnson [Tue, 17 Dec 2013 22:35:38 +0000 (22:35 +0000)]
2013-12-17  Teresa Johnson  <tejohnson@google.com>

PR gcov-profile/59527
* cfgrtl.c (fixup_reorder_chain): Handle a region-crossing
        branch, which can't be eliminated.

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

10 years agoTime profile-based function reordering (phase 2).
marxin [Tue, 17 Dec 2013 22:20:12 +0000 (22:20 +0000)]
Time profile-based function reordering (phase 2).

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

10 years ago PR tree-optimization/59523
jakub [Tue, 17 Dec 2013 21:36:21 +0000 (21:36 +0000)]
PR tree-optimization/59523
* tree-vectorizer.c (fold_loop_vectorized_call): Call update_stmt
on updated stmts.

* gcc.dg/pr59523.c: New test.

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

10 years agocompiler: Use backend interface for runtime errors.
ian [Tue, 17 Dec 2013 20:27:52 +0000 (20:27 +0000)]
compiler: Use backend interface for runtime errors.

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

10 years ago * ipa-inline.c (gate_ipa_inline): Remove.
aldyh [Tue, 17 Dec 2013 20:18:28 +0000 (20:18 +0000)]
* ipa-inline.c (gate_ipa_inline): Remove.
(const pass_data pass_data_ipa_inline): Unset has_gate.
(class pass_ipa_inline): Remove gate() method.

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

10 years agoAdd __int128 test.
mpolacek [Tue, 17 Dec 2013 18:41:01 +0000 (18:41 +0000)]
Add __int128 test.

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

10 years ago2013-12-17 Andreas Tobler <andreast@gcc.gnu.org>
andreast [Tue, 17 Dec 2013 18:12:39 +0000 (18:12 +0000)]
2013-12-17  Andreas Tobler  <andreast@gcc.gnu.org>

    * io/unix.c (tempfile_open): Only use the needed flag O_CLOEXEC.

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

10 years ago2013-12-17 Andreas Tobler <andreast@gcc.gnu.org>
andreast [Tue, 17 Dec 2013 18:05:32 +0000 (18:05 +0000)]
2013-12-17  Andreas Tobler  <andreast@gcc.gnu.org>

    * testsuite/libgomp.c/affinity-1.c: Remove alloca.h inlcude. Replace
    alloca () with __builtin_alloca ().
    * testsuite/libgomp.c/icv-2.c: Add FreeBSD coverage.
    * testsuite/libgomp.c/lock-3.c: Likewise.
    * testsuite/libgomp.c/pr48591.c: Likewise.

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

10 years ago PR ipa/58290
jakub [Tue, 17 Dec 2013 17:35:59 +0000 (17:35 +0000)]
PR ipa/58290
* gfortran.dg/pr58290.f90: New test.

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

10 years ago * ipa-devirt.c (get_polymorphic_call_info): Fix offset calculatoin
hubicka [Tue, 17 Dec 2013 16:08:42 +0000 (16:08 +0000)]
* ipa-devirt.c (get_polymorphic_call_info): Fix offset calculatoin
in contains_type_p query.

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

10 years ago * g++.dg/ipa/devirt-13.C: Update template.
hubicka [Tue, 17 Dec 2013 16:07:18 +0000 (16:07 +0000)]
* g++.dg/ipa/devirt-13.C: Update template.

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

10 years agoRemove leftover variable definition.
tschwinge [Tue, 17 Dec 2013 15:22:29 +0000 (15:22 +0000)]
Remove leftover variable definition.

gcc/
* omp-low.c (tmp_ompfn_id_num): Remove leftover variable
definition.

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

10 years agoRemove leftover function declaration.
tschwinge [Tue, 17 Dec 2013 15:22:18 +0000 (15:22 +0000)]
Remove leftover function declaration.

gcc/
* tree-pass.h (make_pass_expand_omp_ssa): Remove leftover function
declaration.

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

10 years agoRemove leftover comment.
tschwinge [Tue, 17 Dec 2013 15:22:07 +0000 (15:22 +0000)]
Remove leftover comment.

gcc/
* omp-low.c: Remove leftover comment.

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

10 years agoFix typo in dg-warning comment.
tschwinge [Tue, 17 Dec 2013 15:21:57 +0000 (15:21 +0000)]
Fix typo in dg-warning comment.

gcc/testsuite/
* gcc.dg/dfp/wtr-conversion-1.c (testfunc1): Fix typo.

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

10 years agoReflect reality in comment.
tschwinge [Tue, 17 Dec 2013 15:21:45 +0000 (15:21 +0000)]
Reflect reality in comment.

gcc/
* omp-low.c (check_combined_parallel): Reflect reality in comment.

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

10 years agoDocument passes.def.
tschwinge [Tue, 17 Dec 2013 15:21:34 +0000 (15:21 +0000)]
Document passes.def.

gcc/
* doc/cfg.texi (Control Flow): Refer to passes.def instead of
passes.c.
* doc/passes.texi (Pass manager): Refer to passes.def.

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

10 years agoProperly order chapters in GCC Internals manual.
tschwinge [Tue, 17 Dec 2013 15:21:23 +0000 (15:21 +0000)]
Properly order chapters in GCC Internals manual.

gcc/
* doc/gccint.texi (Top): Fix inclusion order.

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

10 years agoFix description of OpenMP parallel directive in the C and C++ front ends.
tschwinge [Tue, 17 Dec 2013 15:21:07 +0000 (15:21 +0000)]
Fix description of OpenMP parallel directive in the C and C++ front ends.

gcc/c/
* c-parser.c (c_parser_omp_parallel): Fix description.
gcc/cp/
* parser.c (cp_parser_omp_parallel): Fix description.

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

10 years ago PR testsuite/59534
jakub [Tue, 17 Dec 2013 15:17:00 +0000 (15:17 +0000)]
PR testsuite/59534
* testsuite/libgomp.fortran/retval1.f90 (e5): Avoid non-shortcircuited
comparisons.

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

10 years ago2013-12-17 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
ktkachov [Tue, 17 Dec 2013 13:44:07 +0000 (13:44 +0000)]
2013-12-17  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* config/arm/arm-cores.def (cortex-a12): Use cortexa15 scheduling.
* config/arm/arm.c (arm_issue_rate): Handle cortexa12.
* config/arm/arm.md (generic_vfp): Remove cortexa12.

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

10 years ago[ARM 5/5 big.LITTLE] Add support for -mcpu=cortex-a57.cortex-a53
jgreenhalgh [Tue, 17 Dec 2013 12:32:43 +0000 (12:32 +0000)]
[ARM 5/5 big.LITTLE] Add support for -mcpu=cortex-a57.cortex-a53

gcc/

* config/arm/arm-cores.def (cortex-a57.cortex-a53): New.
* doc/invoke.texi: Document -mcpu=cortex-a57.cortex-a53.
* config/arm/arm-tables.opt: Regenerate.
* config/arm/arm-tune.md: Regenerate.
* config/arm/bpabi.h
(BE8_LINK_SPEC): Handle -mcpu=cortex-a57.cortex-a53.

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

10 years ago[ARM 4/5 big.LITTLE] Add support for -mcpu=cortex-a57
jgreenhalgh [Tue, 17 Dec 2013 12:30:35 +0000 (12:30 +0000)]
[ARM 4/5 big.LITTLE] Add support for -mcpu=cortex-a57

gcc/
* config/arm/arm-cores.def (cortex-a57): New.
* doc/invoke.texi: Document -mcpu=cortex-a57.
* config/arm/arm-tables.opt: Regenerate.
* config/arm/arm-tune.md: Regenerate.
* config/arm/bpabi.h (BE8_LINK_SPEC): Handle -mcpu=cortex-a57.

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

10 years ago[ARM 3/5 big.LITTLE] Add support for -mcpu=cortex-a15.cortex-a7
jgreenhalgh [Tue, 17 Dec 2013 12:27:38 +0000 (12:27 +0000)]
[ARM 3/5 big.LITTLE] Add support for -mcpu=cortex-a15.cortex-a7

2013-12-17  James Greenhalgh  <james.greenhalgh@arm.com>

* config/arm/arm-cores.def (cortex-a15.cortex-a7): New.
* doc/invoke.texi: Document -mcpu=cortex-a15.cortex-a7.
* config/arm/arm-tables.opt: Regenerate.
* config/arm/arm-tune.md: Regenerate.
* config/arm/bpabi.h
(BE8_LINK_SPEC): Handle -mcpu=cortex-a5.cortex-a7.

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

10 years ago[ARM 2/5 big.LITTLE] Allow tuning parameters without unique tuning targets.
jgreenhalgh [Tue, 17 Dec 2013 12:26:10 +0000 (12:26 +0000)]
[ARM 2/5 big.LITTLE] Allow tuning parameters without unique tuning targets.
gcc/
* config/arm/arm-cores.def: Add new column for TUNE_IDENT.
* config/arm/genopt.sh: Improve layout.
* config/arm/arm-tune.md: Regenerate.
* config/arm/arm-tables.opt: Regenerate.
* config/arm/arm-opts.h (ARM_CORE): Modify macro for TUNE_IDENT.
* config/arm/arm.c (ARM_CORE): Modify macro for TUNE_IDENT.
(arm_option_override): When a CPU is chosen, that should also
form the tune target.
* config/arm/arm.h (ARM_CORE): Modify macro for TUNE_IDENT.

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

10 years ago[ARM 1/5 big.LITTLE] Add driver support for rewriting -mcpu names
jgreenhalgh [Tue, 17 Dec 2013 12:24:05 +0000 (12:24 +0000)]
[ARM 1/5 big.LITTLE] Add driver support for rewriting -mcpu names

gcc/
* common/config/arm/arm-common.c (arm_rewrite_selected_cpu): New.
(arm_rewrite_mcpu): Likewise.
* config/arm/arm-protos.h (arm_rewrite_selected_cpu): New.
* config/arm/arm.h (BIG_LITTLE_SPEC): New.
(BIG_LITTLE_SPEC_FUNCTIONS): Likewise.
(EXTRA_SPEC_FUNCTIONS): Include BIG_LITTLE_SPEC_FUNCTIONS.
(ASM_CPU_SPEC): Include BIG_LITTLE_SPEC.
* config/arm/arm.c (arm_file_start): Rewrite arm_selecetd_cpu values.

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

10 years ago * expmed.c (lowpart_bit_field_p): Fix comment.
ebotcazou [Tue, 17 Dec 2013 12:11:40 +0000 (12:11 +0000)]
* expmed.c (lowpart_bit_field_p): Fix comment.
(store_bit_field_using_insv): Fix formatting.
(store_bit_field): Likewise.
(store_fixed_bit_field): More declaration and remove return.
(store_fixed_bit_field_1): Fix formatting.
(extract_fixed_bit_field): Move declaration.
(extract_fixed_bit_field_1): Simplify.

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

10 years ago * g++.dg/ipa/devirt-13.C: Update template.
hubicka [Tue, 17 Dec 2013 10:26:59 +0000 (10:26 +0000)]
* g++.dg/ipa/devirt-13.C: Update template.
* ipa-utils.h (possible_polymorphic_call_targets): Determine context of
the call.
* gimple-fold.c (gimple_fold_call): Use ipa-devirt to devirtualize.

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

10 years ago * expr.c (convert_modes): For SUBREG_PROMOTED_VAR_P use SUBREG_REG (x)
jakub [Tue, 17 Dec 2013 08:46:16 +0000 (08:46 +0000)]
* expr.c (convert_modes): For SUBREG_PROMOTED_VAR_P use SUBREG_REG (x)
instead of x as last gen_lowpart argument.

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

10 years ago2013-12-16 Jerry DeLisle <jvdelisle@gcc.gnu>
jvdelisle [Tue, 17 Dec 2013 03:06:04 +0000 (03:06 +0000)]
2013-12-16  Jerry DeLisle  <jvdelisle@gcc.gnu>

PR libfortran/59419
* io/file_pos.c (st_rewind): Do proper return after
generate_error.
* io/open.c (edit_modes): Move action code inside block that
checks for library ok. (new_unit): Do cleanup after error.
(st_open): Do proper return after error.
* io/transfer.c (data_transfer_init): Likewise.

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

10 years agoDaily bump.
gccadmin [Tue, 17 Dec 2013 00:17:03 +0000 (00:17 +0000)]
Daily bump.

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

10 years ago2013-12-16 Janus Weil <janus@gcc.gnu.org>
janus [Mon, 16 Dec 2013 22:01:58 +0000 (22:01 +0000)]
2013-12-16  Janus Weil  <janus@gcc.gnu.org>

PR fortran/54949
* symbol.c (check_conflict): Forbid abstract procedure pointers.
(gfc_add_abstract): Check for attribute conflicts.

2013-12-16  Janus Weil  <janus@gcc.gnu.org>

PR fortran/54949
* gfortran.dg/proc_ptr_44.f90: New.

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

10 years agocompiler: Use backend interface for struct field expressions.
ian [Mon, 16 Dec 2013 19:58:50 +0000 (19:58 +0000)]
compiler: Use backend interface for struct field expressions.

* go-gcc.cc (Gcc_backend::struct_field_expression): New function.

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

10 years ago* MAINTAINERS (Write After Approval): Add myself.
trippels [Mon, 16 Dec 2013 19:01:40 +0000 (19:01 +0000)]
* MAINTAINERS (Write After Approval): Add myself.

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

10 years ago * predict.h (PROB_LIKELY): Fix the value.
jakub [Mon, 16 Dec 2013 18:46:49 +0000 (18:46 +0000)]
* predict.h (PROB_LIKELY): Fix the value.
* internal-fn.c (ubsan_expand_si_overflow_mul_check): Add support
for overflow checking for modes without 2xwider supported mode,
if the mode has 2xnarrower mode.

* c-c++-common/ubsan/overflow-mul-3.c: New test.
* c-c++-common/ubsan/overflow-mul-4.c: New test.

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

10 years ago * internal-fn.c: Include stringpool.h and tree-ssanames.h.
jakub [Mon, 16 Dec 2013 18:44:51 +0000 (18:44 +0000)]
* internal-fn.c: Include stringpool.h and tree-ssanames.h.
(ubsan_expand_si_overflow_addsub_check): In the generic expansion,
try to improve generated code if one of the arguments is constant
or get_range_info says that one of the argument is always
negative or always non-negative.
* tree-vrp.c (simplify_internal_call_using_ranges): New function.
(simplify_stmt_using_ranges): Call it.

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

10 years ago2013-12-16 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Mon, 16 Dec 2013 18:24:54 +0000 (18:24 +0000)]
2013-12-16  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/59466
* emit-rtl.c (change_address_1): Don't validate address for LRA.
* recog.c (general_operand): Accept any memory for LRA.
* lra.c (lra_set_insn_recog_data): Add an assert.

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

10 years ago * tree-vectorizer.h (struct _loop_vec_info): Add scalar_loop field.
jakub [Mon, 16 Dec 2013 18:24:15 +0000 (18:24 +0000)]
* tree-vectorizer.h (struct _loop_vec_info): Add scalar_loop field.
(LOOP_VINFO_SCALAR_LOOP): Define.
(slpeel_tree_duplicate_loop_to_edge_cfg): Add scalar_loop argument.
* config/i386/sse.md (maskload<mode>, maskstore<mode>): New expanders.
* tree-data-ref.c (get_references_in_stmt): Handle MASK_LOAD and
MASK_STORE.
* internal-fn.def (LOOP_VECTORIZED, MASK_LOAD, MASK_STORE): New
internal fns.
* tree-if-conv.c: Include expr.h, optabs.h, tree-ssa-loop-ivopts.h and
tree-ssa-address.h.
(release_bb_predicate): New function.
(free_bb_predicate): Use it.
(reset_bb_predicate): Likewise.  Don't unallocate bb->aux
just to immediately allocate it again.
(add_to_predicate_list): Add loop argument.  If basic blocks that
dominate loop->latch don't insert any predicate.
(add_to_dst_predicate_list): Adjust caller.
(if_convertible_phi_p): Add any_mask_load_store argument, if true,
handle it like flag_tree_loop_if_convert_stores.
(insert_gimplified_predicates): Likewise.
(ifcvt_can_use_mask_load_store): New function.
(if_convertible_gimple_assign_stmt_p): Add any_mask_load_store
argument, check if some conditional loads or stores can't be
converted into MASK_LOAD or MASK_STORE.
(if_convertible_stmt_p): Add any_mask_load_store argument,
pass it down to if_convertible_gimple_assign_stmt_p.
(predicate_bbs): Don't return bool, only check if the last stmt
of a basic block is GIMPLE_COND and handle that.  Adjust
add_to_predicate_list caller.
(if_convertible_loop_p_1): Only call predicate_bbs if
flag_tree_loop_if_convert_stores and free_bb_predicate in that case
afterwards, check gimple_code of stmts here.  Replace is_predicated
check with dominance check.  Add any_mask_load_store argument,
pass it down to if_convertible_stmt_p and if_convertible_phi_p,
call if_convertible_phi_p only after all if_convertible_stmt_p
calls.
(if_convertible_loop_p): Add any_mask_load_store argument,
pass it down to if_convertible_loop_p_1.
(predicate_mem_writes): Emit MASK_LOAD and/or MASK_STORE calls.
(combine_blocks): Add any_mask_load_store argument, pass
it down to insert_gimplified_predicates and call predicate_mem_writes
if it is set.  Call predicate_bbs.
(version_loop_for_if_conversion): New function.
(tree_if_conversion): Adjust if_convertible_loop_p and combine_blocks
calls.  Return todo flags instead of bool, call
version_loop_for_if_conversion if if-conversion should be just
for the vectorized loops and nothing else.
(main_tree_if_conversion): Adjust caller.  Don't call
tree_if_conversion for dont_vectorize loops if if-conversion
isn't explicitly enabled.
* tree-vect-data-refs.c (vect_check_gather): Handle
MASK_LOAD/MASK_STORE.
(vect_analyze_data_refs, vect_supportable_dr_alignment): Likewise.
* gimple.h (gimple_expr_type): Handle MASK_STORE.
* internal-fn.c (expand_LOOP_VECTORIZED, expand_MASK_LOAD,
expand_MASK_STORE): New functions.
* tree-vectorizer.c: Include tree-cfg.h and gimple-fold.h.
(vect_loop_vectorized_call, fold_loop_vectorized_call): New functions.
(vectorize_loops): Don't try to vectorize loops with
loop->dont_vectorize set.  Set LOOP_VINFO_SCALAR_LOOP for if-converted
loops, fold LOOP_VECTORIZED internal call depending on if loop
has been vectorized or not.
* tree-vect-loop-manip.c (slpeel_duplicate_current_defs_from_edges):
New function.
(slpeel_tree_duplicate_loop_to_edge_cfg): Add scalar_loop argument.
If non-NULL, copy basic blocks from scalar_loop instead of loop, but
still to loop's entry or exit edge.
(slpeel_tree_peel_loop_to_edge): Add scalar_loop argument, pass it
down to slpeel_tree_duplicate_loop_to_edge_cfg.
(vect_do_peeling_for_loop_bound, vect_do_peeling_for_loop_alignment):
Adjust callers.
(vect_loop_versioning): If LOOP_VINFO_SCALAR_LOOP, perform loop
versioning from that loop instead of LOOP_VINFO_LOOP, move it to the
right place in the CFG afterwards.
* tree-vect-loop.c (vect_determine_vectorization_factor): Handle
MASK_STORE.
* cfgloop.h (struct loop): Add dont_vectorize field.
* tree-loop-distribution.c (copy_loop_before): Adjust
slpeel_tree_duplicate_loop_to_edge_cfg caller.
* optabs.def (maskload_optab, maskstore_optab): New optabs.
* passes.def: Add a note that pass_vectorize must immediately follow
pass_if_conversion.
* tree-predcom.c (split_data_refs_to_components): Give up if
DR_STMT is a call.
* tree-vect-stmts.c (vect_mark_relevant): Don't crash if lhs
is NULL.
(exist_non_indexing_operands_for_use_p): Handle MASK_LOAD
and MASK_STORE.
(vectorizable_mask_load_store): New function.
(vectorizable_call): Call it for MASK_LOAD or MASK_STORE.
(vect_transform_stmt): Handle MASK_STORE.
* tree-ssa-phiopt.c (cond_if_else_store_replacement): Ignore
DR_STMT where lhs is NULL.
* optabs.h (can_vec_perm_p): Fix up comment typo.
(can_vec_mask_load_store_p): New prototype.
* optabs.c (can_vec_mask_load_store_p): New function.

* gcc.dg/vect/vect-cond-11.c: New test.
* gcc.target/i386/vect-cond-1.c: New test.
* gcc.target/i386/avx2-gather-5.c: New test.
* gcc.target/i386/avx2-gather-6.c: New test.
* gcc.dg/vect/vect-mask-loadstore-1.c: New test.
* gcc.dg/vect/vect-mask-load-1.c: New test.

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

10 years agoAdditional ChangeLog entry fix.
jakub [Mon, 16 Dec 2013 17:59:52 +0000 (17:59 +0000)]
Additional ChangeLog entry fix.

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

10 years agoFix up ChangeLog entry function name.
jakub [Mon, 16 Dec 2013 17:55:13 +0000 (17:55 +0000)]
Fix up ChangeLog entry function name.

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

10 years ago PR libgomp/59337
jakub [Mon, 16 Dec 2013 15:33:42 +0000 (15:33 +0000)]
PR libgomp/59337
* openmp.c (resolve_omp_atomic): Adjust error message.

* gfortran.dg/gomp/pr59337.f90: New test.

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

10 years agoRevert r206010.
kyukhin [Mon, 16 Dec 2013 14:04:02 +0000 (14:04 +0000)]
Revert r206010.

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

10 years ago2013-12-16 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
ktkachov [Mon, 16 Dec 2013 13:56:28 +0000 (13:56 +0000)]
2013-12-16  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* config/arm/driver-arm.c (arm_cpu_table): Add cortex-a12 entry.

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

10 years ago PR ipa/59265
hubicka [Mon, 16 Dec 2013 13:37:43 +0000 (13:37 +0000)]
PR ipa/59265
* ipa-profile.c (ipa_profile_generate_summary): Do not ICE when
call is already devirtualized.

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

10 years ago * Makefile.in (version.o): Restore dependencies on
jakub [Mon, 16 Dec 2013 10:56:45 +0000 (10:56 +0000)]
* Makefile.in (version.o): Restore dependencies on
$(REVISION), $(DATESTAMP), $(BASEVER) and $(DEVPHASE).

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

10 years ago PR ipa/59473
hubicka [Mon, 16 Dec 2013 10:52:48 +0000 (10:52 +0000)]
PR ipa/59473
* ipa-devirt.c (get_class_context): Do not ICE when type is found
at wrong offset.

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

10 years ago PR libgomp/58756
jakub [Mon, 16 Dec 2013 10:34:28 +0000 (10:34 +0000)]
PR libgomp/58756
* omp-low.c (lower_rec_input_clauses) <case OMP_CLAUSE_REDUCTION>: For
reductions without placeholder if is_simd, but when not using
GOMP_SIMD* internal calls, also perform the reduction operation
on the outer var rather than simple assignment.

* testsuite/libgomp.c/pr58756.c: New test.

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

10 years ago* config/i386/i386.c (slm_cost): Fix imul cost for HI.
kyukhin [Mon, 16 Dec 2013 08:52:08 +0000 (08:52 +0000)]
* config/i386/i386.c (slm_cost): Fix imul cost for HI.

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

10 years ago PR middle-end/58956
jakub [Mon, 16 Dec 2013 08:09:05 +0000 (08:09 +0000)]
PR middle-end/58956
PR middle-end/59470
* gimple-walk.h (walk_stmt_load_store_addr_fn): New typedef.
(walk_stmt_load_store_addr_ops, walk_stmt_load_store_ops): Use it
for callback params.
* gimple-walk.c (walk_stmt_load_store_ops): Likewise.
(walk_stmt_load_store_addr_ops): Likewise.  Adjust all callback
calls to supply the gimple operand containing the base tree
as an extra argument.
* tree-ssa-ter.c: Include gimple-walk.h.
(find_ssaname, find_ssaname_in_store): New helper functions.
(find_replaceable_in_bb): For calls or GIMPLE_ASM, only set
same_root_var if USE is used somewhere in the stores of the stmt.
* ipa-prop.c (visit_ref_for_mod_analysis): Remove name of the stmt
argument and ATTRIBUTE_UNUSED, add another unnamed tree argument.
* ipa-pure-const.c (check_load, check_store, check_ipa_load,
check_ipa_store): Likewise.
* gimple.c (gimple_ior_addresses_taken_1, check_loadstore): Likewise.
* ipa-split.c (test_nonssa_use, mark_nonssa_use): Likewise.
(verify_non_ssa_vars, visit_bb): Adjust their callers.
* cfgexpand.c (add_scope_conflicts_1): Use
walk_stmt_load_store_addr_fn type for visit variable.
(visit_op, visit_conflict): Remove name of the stmt
argument and ATTRIBUTE_UNUSED, add another unnamed tree argument.
* tree-sra.c (asm_visit_addr): Likewise.  Remove name of the data
argument and ATTRIBUTE_UNUSED.
* cgraphbuild.c (mark_address, mark_load, mark_store): Add another
unnamed tree argument.
* gimple-ssa-isolate-paths.c (check_loadstore): Likewise.  Remove
ATTRIBUTE_UNUSED from stmt parameter.

* gcc.target/i386/pr59470.c: New test.

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

10 years ago2013-12-16 Chung-Lin Tang <cltang@codesourcery.com>
cltang [Mon, 16 Dec 2013 04:28:24 +0000 (04:28 +0000)]
2013-12-16  Chung-Lin Tang  <cltang@codesourcery.com>

* opts-common.c (integral_argument): Add support for
hexadecimal command option integer arguments. Update comments.

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

10 years agoDaily bump.
gccadmin [Mon, 16 Dec 2013 00:16:47 +0000 (00:16 +0000)]
Daily bump.

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

10 years ago PR ipa/59265
hubicka [Sun, 15 Dec 2013 22:19:33 +0000 (22:19 +0000)]
PR ipa/59265
* ipa-prop.c (ipa_analyze_call_uses): Skip already
devirtualized calls.
g++.dg/torture/pr59265.C: New testcase.

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

10 years ago * gcc.dg/vect/vect-nop-move.c (foo32x2_be): Call
uros [Sun, 15 Dec 2013 18:40:50 +0000 (18:40 +0000)]
* gcc.dg/vect/vect-nop-move.c (foo32x2_be): Call
__builtin_ia32_emms for 32bit x86 targets.
(foo32x2_le): Ditto.
(main): Reorder function calls.

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

10 years ago * gcc.target/i386/pr57756.c (dg-options): Add -mno-sse3.
uros [Sun, 15 Dec 2013 12:43:06 +0000 (12:43 +0000)]
* gcc.target/i386/pr57756.c (dg-options): Add -mno-sse3.

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

10 years ago * ChangeLog: Add missing PR number.
uros [Sun, 15 Dec 2013 12:24:17 +0000 (12:24 +0000)]
* ChangeLog: Add missing PR number.

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

10 years ago * gcc.target/i386/pr43662.c (dg-options):
uros [Sun, 15 Dec 2013 11:20:53 +0000 (11:20 +0000)]
* gcc.target/i386/pr43662.c (dg-options):
Add -maccumulate-outgoing-args.
* gcc.target/i386/pr43869.c (dg-options): Ditto.
* gcc.target/i386/pr57003.c (dg-options): Ditto.
* gcc.target/i386/avx-vzeroupper-16.c (dg-options):
Remove -mtune=generic and add -maccumulate-outgoing-args instead.
* gcc.target/i386/avx-vzeroupper-17.c (dg-options): Ditto.
* gcc.target/i386/avx-vzeroupper-18.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/func-1.c (dg-options):
Add -maccumulate-outgoing-args.
* gcc.target/x86_64/abi/callabi/func-2a.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/func-2b.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/func-indirect.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/func-indirect-2a.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/func-indirect-2b.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/leaf-1.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/leaf-2.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/pr38891.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/vaarg-1.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/vaarg-2.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/vaarg-3.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/vaarg-4a.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/vaarg-4b.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/vaarg-5a.c (dg-options): Ditto.
* gcc.target/x86_64/abi/callabi/vaarg-5b.c (dg-options): Ditto.

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

10 years ago2013-12-15 Janus Weil <janus@gcc.gnu.org>
janus [Sun, 15 Dec 2013 09:49:51 +0000 (09:49 +0000)]
2013-12-15  Janus Weil  <janus@gcc.gnu.org>

PR fortran/59493
* class.c (gfc_find_intrinsic_vtab): Handle BT_CLASS.

2013-12-15  Janus Weil  <janus@gcc.gnu.org>

PR fortran/59493
* gfortran.dg/unlimited_polymorphic_15.f90: New.

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

10 years agoDaily bump.
gccadmin [Sun, 15 Dec 2013 00:16:28 +0000 (00:16 +0000)]
Daily bump.

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

10 years ago PR middle-end/58477
hubicka [Sat, 14 Dec 2013 22:08:48 +0000 (22:08 +0000)]
PR middle-end/58477
* ipa-prop.c (stmt_may_be_vtbl_ptr_store): Skip clobbers.
* g++.dg/ipa/devirt-19.C: New testcase.

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

10 years agoMore overflow-negate-* testing.
mpolacek [Sat, 14 Dec 2013 20:07:52 +0000 (20:07 +0000)]
More overflow-negate-* testing.

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

10 years ago PR middle-end/58477
hubicka [Sat, 14 Dec 2013 18:28:22 +0000 (18:28 +0000)]
PR middle-end/58477
* cgraphclones.c (cgraph_clone_edge): Do not resolve speculative edges.

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

10 years ago2013-12-14 Janus Weil <janus@gcc.gnu.org>
janus [Sat, 14 Dec 2013 17:47:22 +0000 (17:47 +0000)]
2013-12-14  Janus Weil  <janus@gcc.gnu.org>

PR fortran/59502
* primary.c (gfc_match_varspec): Check for 'class_ok'.

2013-12-14  Janus Weil  <janus@gcc.gnu.org>

PR fortran/59502
* gfortran.dg/class_57.f90: New.

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

10 years agoRestore flag_pic in ix86_function_specific_restore
hjl [Sat, 14 Dec 2013 17:01:49 +0000 (17:01 +0000)]
Restore flag_pic in ix86_function_specific_restore

gcc/

PR target/59492
* config/i386/i386.c (ix86_function_specific_restore): Don't
change -fPIC.

2013-12-14   H.J. Lu  <hongjiu.lu@intel.com>

PR target/59492
* g++.dg/other/pr59492.C: New file.

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

10 years agoFix the ChangeLog entries
hjl [Sat, 14 Dec 2013 16:59:34 +0000 (16:59 +0000)]
Fix the ChangeLog entries

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

10 years ago* g++.dg/cilk-plus/cilk-plus.exp: Fix last change.
schwab [Sat, 14 Dec 2013 15:30:45 +0000 (15:30 +0000)]
* g++.dg/cilk-plus/cilk-plus.exp: Fix last change.

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

10 years ago * var-tracking.c (add_stores): Fix oversight in latest commit.
ebotcazou [Sat, 14 Dec 2013 15:24:58 +0000 (15:24 +0000)]
* var-tracking.c (add_stores): Fix oversight in latest commit.

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

10 years agoMore tests for ubsan.
mpolacek [Sat, 14 Dec 2013 13:31:04 +0000 (13:31 +0000)]
More tests for ubsan.

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

10 years ago PR sanitizer/59503
mpolacek [Sat, 14 Dec 2013 12:19:56 +0000 (12:19 +0000)]
PR sanitizer/59503
* internal-fn.c (ubsan_expand_si_overflow_addsub_check): Call
expand_binop with correct optab depending on code.
testsuite/
* c-c++-common/ubsan/pr59503.c: New test.

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

10 years ago2013-12-14 Janus Weil <janus@gcc.gnu.org>
janus [Sat, 14 Dec 2013 10:31:56 +0000 (10:31 +0000)]
2013-12-14  Janus Weil  <janus@gcc.gnu.org>

PR fortran/59450
* module.c (mio_expr): Handle type-bound function expressions.

2013-12-14  Janus Weil  <janus@gcc.gnu.org>

PR fortran/59450
* gfortran.dg/typebound_proc_31.f90: New.

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

10 years agoFix REG_PARM_STACK_SPACE usage in expand_call
vries [Sat, 14 Dec 2013 08:06:22 +0000 (08:06 +0000)]
Fix REG_PARM_STACK_SPACE usage in expand_call

2013-12-14  Tom de Vries  <tom@codesourcery.com>

* calls.c (expand_call): Fix REG_PARM_STACK_SPACE comparison.

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

10 years ago* config/rl78/rl78-expand.md (one_cmplqi2): Make constant signed.
dj [Sat, 14 Dec 2013 03:45:14 +0000 (03:45 +0000)]
* config/rl78/rl78-expand.md (one_cmplqi2): Make constant signed.

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

10 years agoDaily bump.
gccadmin [Sat, 14 Dec 2013 00:16:27 +0000 (00:16 +0000)]
Daily bump.

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