platform/upstream/gcc.git
10 years agoDaily bump.
GCC Administrator [Wed, 28 May 2014 00:17:19 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r210994

10 years agolibgo/runtime: fix unused-result warning
Ian Lance Taylor [Tue, 27 May 2014 22:01:21 +0000 (22:01 +0000)]
libgo/runtime: fix unused-result warning

Result of runtime_write is ignored, causing
an unused-result result warning (error in my
case, with -Werror=unused-result).

From-SVN: r210987

10 years ago* gnat.dg/aliasing1.adb (dg-final): Robustify pattern matching.
Eric Botcazou [Tue, 27 May 2014 20:37:09 +0000 (20:37 +0000)]
* gnat.dg/aliasing1.adb (dg-final): Robustify pattern matching.

From-SVN: r210982

10 years agodouble-int.c (div_and_round_double): Use the proper predicate to detect a negative...
Eric Botcazou [Tue, 27 May 2014 20:30:18 +0000 (20:30 +0000)]
double-int.c (div_and_round_double): Use the proper predicate to detect a negative quotient.

* double-int.c (div_and_round_double) <ROUND_DIV_EXPR>: Use the proper
predicate to detect a negative quotient.

From-SVN: r210981

10 years agore PR c/56724 (sub-optimal location in error)
Marek Polacek [Tue, 27 May 2014 20:14:22 +0000 (20:14 +0000)]
re PR c/56724 (sub-optimal location in error)

PR c/56724
* c-typeck.c (convert_arguments): Get location of a parameter.  Change
error and warning calls to error_at and warning_at.  Pass location of
a parameter to it.  Call warning_at with OPT_Wtraditional_conversion.
(convert_for_assignment): Add parameter to WARN_FOR_ASSIGNMENT and
WARN_FOR_QUALIFIERS.  Pass expr_loc to those.

* gcc.dg/pr56724-1.c: New test.
* gcc.dg/pr56724-2.c: New test.
* gcc.dg/wtr-conversion-1.c: Use -Wtraditional-conversion instead of
-Wtraditional.
* gcc.dg/dfp/wtr-conversion-1.c: Likewise.

From-SVN: r210980

10 years agofold-const.c (fold_comparison): Clean up and extend X +- C1 CMP C2 to X CMP C2 -...
Eric Botcazou [Tue, 27 May 2014 19:54:46 +0000 (19:54 +0000)]
fold-const.c (fold_comparison): Clean up and extend X +- C1 CMP C2 to X CMP C2 -+ C1 transformation to...

* fold-const.c (fold_comparison): Clean up and extend X +- C1 CMP C2
to X CMP C2 -+ C1 transformation to EQ_EXPR/NE_EXPR.
Add X - Y CMP 0 to X CMP Y transformation.
(fold_binary_loc) <EQ_EXPR/NE_EXPR>: Remove same transformations.

From-SVN: r210979

10 years agostmt.c (dump_case_nodes): Don't convert values to HOST_WIDE_INT before printing.
Segher Boessenkool [Tue, 27 May 2014 18:33:57 +0000 (20:33 +0200)]
stmt.c (dump_case_nodes): Don't convert values to HOST_WIDE_INT before printing.

* stmt.c (dump_case_nodes): Don't convert values to HOST_WIDE_INT
before printing.

From-SVN: r210978

10 years agomips.c: Add include of cgraph.h.
Steve Ellcey [Tue, 27 May 2014 15:59:31 +0000 (15:59 +0000)]
mips.c: Add include of cgraph.h.

2014-05-27  Steve Ellcey  <sellcey@mips.com>

* config/mips/mips.c: Add include of cgraph.h.

From-SVN: r210975

10 years agovrp92.c: New testcase.
Richard Biener [Tue, 27 May 2014 15:00:29 +0000 (15:00 +0000)]
vrp92.c: New testcase.

2014-05-27  Richard Biener  <rguenther@suse.de>

* gcc.dg/tree-ssa/vrp92.c: New testcase.

From-SVN: r210974

10 years agosystem.h (__STDC_FORMAT_MACROS): Define as very first thing.
Richard Biener [Tue, 27 May 2014 13:36:29 +0000 (13:36 +0000)]
system.h (__STDC_FORMAT_MACROS): Define as very first thing.

2014-05-27  Richard Biener  <rguenther@suse.de>

* system.h (__STDC_FORMAT_MACROS): Define as very first thing.

From-SVN: r210973

10 years agore PR testsuite/61319 (The tests c-c++-common/ubsan/float-cast-overflow-(1|2|4).c...
Marek Polacek [Tue, 27 May 2014 11:41:45 +0000 (11:41 +0000)]
re PR testsuite/61319 (The tests c-c++-common/ubsan/float-cast-overflow-(1|2|4).c fail on x86_64-apple-darwin*)

PR testsuite/61319
* c-c++-common/ubsan/float-cast.h: Conditionally define LLONG_MAX,
LLONG_MIN, and ULLONG_MAX.

From-SVN: r210970

10 years agore PR libgcc/61152 (Missing GCC Runtime Library Exception in some files that are...
Georg-Johann Lay [Tue, 27 May 2014 11:37:49 +0000 (11:37 +0000)]
re PR libgcc/61152 (Missing GCC Runtime Library Exception in some files that are included in libgcc)

PR libgcc/61152
* config/arm/arm.h (License): Add note to COPYING.RUNTIME.
* config/arm/arm-cores.def (License): Same.
* config/arm/arm-opts.h (License): Same.
* config/arm/aout.h (License): Same.
* config/arm/bpabi.h (License): Same.
* config/arm/elf.h (License): Same.
* config/arm/linux-elf.h (License): Same.
* config/arm/linux-gas.h (License): Same.
* config/arm/netbsd-elf.h (License): Same.
* config/arm/uclinux-eabi.h (License): Same.
* config/arm/uclinux-elf.h (License): Same.
* config/arm/vxworks.h (License): Same.

From-SVN: r210969

10 years agore PR libstdc++/61329 (#include <regex> and _GLIBCXX_DEBUG causes multiple symbol...
Jonathan Wakely [Tue, 27 May 2014 11:14:17 +0000 (12:14 +0100)]
re PR libstdc++/61329 (#include <regex> and _GLIBCXX_DEBUG causes multiple symbol definition.)

PR libstdc++/61329
* include/bits/regex_automaton.tcc (_State_base::_M_print): Add
inline specifier.
(_State_base::_M_dot): Likewise.

From-SVN: r210968

10 years ago[ARM] Vectorise bswap* in aarch32.
Kyrylo Tkachov [Tue, 27 May 2014 10:56:25 +0000 (10:56 +0000)]
[ARM] Vectorise bswap* in aarch32.

* config/arm/neon.md (neon_bswap<mode>): New pattern.
* config/arm/arm.c (neon_itype): Add NEON_BSWAP.
(arm_init_neon_builtins): Handle NEON_BSWAP.
Define required type nodes.
(arm_expand_neon_builtin): Handle NEON_BSWAP.
(arm_builtin_vectorized_function): Handle BUILTIN_BSWAP builtins.
* config/arm/arm_neon_builtins.def (bswap): Define builtins.
* config/arm/iterators.md (VDQHSD): New mode iterator.

* lib/target-supports.exp (check_effective_target_vect_bswap):
Specify arm*-*-* support.

From-SVN: r210967

10 years agotree-vrp.c (vrp_evaluate_conditional_warnv_with_ops_using_ranges): Try using literal...
Richard Biener [Tue, 27 May 2014 10:32:39 +0000 (10:32 +0000)]
tree-vrp.c (vrp_evaluate_conditional_warnv_with_ops_using_ranges): Try using literal operands when comparing value-ranges failed.

2014-05-27  Richard Biener  <rguenther@suse.de>

* tree-vrp.c (vrp_evaluate_conditional_warnv_with_ops_using_ranges):
Try using literal operands when comparing value-ranges failed.

From-SVN: r210966

10 years agoira.c (commutative_operand): Adjust for change to recog_data.
Richard Sandiford [Tue, 27 May 2014 10:23:20 +0000 (10:23 +0000)]
ira.c (commutative_operand): Adjust for change to recog_data.

gcc/
* ira.c (commutative_operand): Adjust for change to recog_data.
[Missing from previous commit.]

From-SVN: r210965

10 years agosystem.h (TEST_BIT): New macro.
Richard Sandiford [Tue, 27 May 2014 10:06:22 +0000 (10:06 +0000)]
system.h (TEST_BIT): New macro.

gcc/
* system.h (TEST_BIT): New macro.
* recog.h (alternative_mask): New type.
(ALL_ALTERNATIVES, ALTERNATIVE_BIT): New macros.
(recog_data_d): Replace alternative_enabled_p array with
enabled_alternatives.
(target_recog): New structure.
(default_target_recog, this_target_recog): Declare.
(get_enabled_alternatives, recog_init): Likewise.
* recog.c (default_target_recog, this_target_recog): New variables.
(get_enabled_alternatives): New function.
(extract_insn): Use it.
(recog_init): New function.
(preprocess_constraints, constrain_operands): Adjust for change to
recog_data.
* postreload.c (reload_cse_simplify_operands): Likewise.
* reload.c (find_reloads): Likewise.
* ira-costs.c (record_reg_classes): Likewise.
* ira-lives.c (single_reg_class): Likewise.  Fix bug in which
all alternatives after a disabled one would be skipped.
(ira_implicitly_set_insn_hard_regs): Likewise.
* ira.c (ira_setup_alts): Adjust for change to recog_data.
* lra-int.h (lra_insn_recog_data): Replace alternative_enabled_p
with enabled_alternatives.
* lra.c (free_insn_recog_data): Update accordingly.
(lra_update_insn_recog_data): Likewise.
(lra_set_insn_recog_data): Likewise.  Use get_enabled_alternatives.
* lra-constraints.c (process_alt_operands): Likewise.  Handle
only_alternative as part of the enabled mask.
* target-globals.h (this_target_recog): Declare.
(target_globals): Add a recog field.
(restore_target_globals): Restore this_target_recog.
* target-globals.c: Include recog.h.
(default_target_globals): Initialize recog field.
(save_target_globals): Likewise.
* reginfo.c (reinit_regs): Call recog_init.
* toplev.c (backend_init_target): Likewise.

From-SVN: r210964

10 years agogencodes.c (main): Make LAST_INSN_CODE higher than any insn code, rather than any...
Richard Sandiford [Tue, 27 May 2014 10:05:55 +0000 (10:05 +0000)]
gencodes.c (main): Make LAST_INSN_CODE higher than any insn code, rather than any named insn's code.

gcc/
* gencodes.c (main): Make LAST_INSN_CODE higher than any insn code,
rather than any named insn's code.

From-SVN: r210963

10 years agogetcwd.c: Include stdlib.h.
Uros Bizjak [Tue, 27 May 2014 09:15:52 +0000 (11:15 +0200)]
getcwd.c: Include stdlib.h.

* intrinsics/getcwd.c: Include stdlib.h.

From-SVN: r210962

10 years agodeclare-simd-1.f90: Require vect_simd_clones effective target.
Uros Bizjak [Tue, 27 May 2014 09:14:53 +0000 (11:14 +0200)]
declare-simd-1.f90: Require vect_simd_clones effective target.

* testsuite/libgomp.fortran/declare-simd-1.f90: Require
vect_simd_clones effective target.
* testsuite/libgomp.fortran/declare-simd-2.f90: Ditto.

From-SVN: r210961

10 years agore PR libgcc/61152 (Missing GCC Runtime Library Exception in some files that are...
Georg-Johann Lay [Tue, 27 May 2014 08:41:24 +0000 (08:41 +0000)]
re PR libgcc/61152 (Missing GCC Runtime Library Exception in some files that are included in libgcc)

PR libgcc/61152
* config/arm/arm-opts.h (License): Add GCC Runtime Library Exception.
* config/arm/arm-cores.def (License): Same.

From-SVN: r210959

10 years agore PR testsuite/61319 (The tests c-c++-common/ubsan/float-cast-overflow-(1|2|4).c...
Dominique d'Humieres [Tue, 27 May 2014 08:36:37 +0000 (10:36 +0200)]
re PR testsuite/61319 (The tests c-c++-common/ubsan/float-cast-overflow-(1|2|4).c fail on x86_64-apple-darwin*)

2014-05-27  Dominique d'Humieres <dominiq@lps.ens.fr>

PR testsuite/61319
* c-c++-common/ubsan/float-cast-overflow-1.c: Make the sign of
-nan optional.
* c-c++-common/ubsan/float-cast-overflow-2.c: Likewise.
* c-c++-common/ubsan/float-cast-overflow-4.c: Likewise.

From-SVN: r210958

10 years ago2014-05-27 Paolo Carlini <paolo.carlini@oracle.com>
Paolo Carlini [Tue, 27 May 2014 08:02:01 +0000 (08:02 +0000)]
2014-05-27  Paolo Carlini  <paolo.carlini@oracle.com>

* Fix typo in the last ChangeLog entry.

From-SVN: r210957

10 years agotree.h (decl_comdat_group): Declare.
Jan Hubicka [Tue, 27 May 2014 04:18:38 +0000 (06:18 +0200)]
tree.h (decl_comdat_group): Declare.

* tree.h (decl_comdat_group): Declare.
* cgraph.h (symtab_in_same_comdat_p): Move offline to ...
* tree.c (decl_comdat_group): Here.

From-SVN: r210956

10 years agoDaily bump.
GCC Administrator [Tue, 27 May 2014 00:17:17 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r210955

10 years ago* ChangeLog-2013: Correct an old entry.
Uros Bizjak [Mon, 26 May 2014 21:49:19 +0000 (23:49 +0200)]
* ChangeLog-2013: Correct an old entry.

From-SVN: r210951

10 years agossa-fre-40.c: Cleanup fre1 tree dump.
Uros Bizjak [Mon, 26 May 2014 21:07:58 +0000 (23:07 +0200)]
ssa-fre-40.c: Cleanup fre1 tree dump.

* gcc.dg/tree-ssa/ssa-fre-40.c: Cleanup fre1 tree dump.

From-SVN: r210950

10 years agoIntroduce xrealloc, use it.
Janne Blomqvist [Mon, 26 May 2014 20:56:45 +0000 (23:56 +0300)]
Introduce xrealloc, use it.

2014-05-26  Janne Blomqvist  <jb@gcc.gnu.org>

* libgfortran.h (xrealloc): New prototype.
* runtime/memory.c (xrealloc): New function.
* io/fbuf.c (fbuf_alloc): Use xrealloc.
* io/list_read.c (push_char_default): Likewise.
(push_char4): Likewise.

From-SVN: r210948

10 years agogfortran.texi (Project Status): Fix broken link.
Tobias Burnus [Mon, 26 May 2014 19:03:17 +0000 (21:03 +0200)]
gfortran.texi (Project Status): Fix broken link.

2014-05-26  Tobias Burnus  <burnus@net-b.de>

        * gfortran.texi (Project Status): Fix broken link.

From-SVN: r210946

10 years agore PR rtl-optimization/61222 (ICE on valid code at -O2 and -O3 on x86_64-linux-gnu...
Richard Sandiford [Mon, 26 May 2014 18:50:55 +0000 (18:50 +0000)]
re PR rtl-optimization/61222 (ICE on valid code at -O2 and -O3 on x86_64-linux-gnu in decompose, at rtl.h:1456)

gcc/
PR rtl-optimization/61222
* combine.c (simplify_shift_const_1): When moving a PLUS outside
the shift, truncate the PLUS operand to the result mode.

gcc/testsuite/
PR rtl-optimization/61222
* gcc.c-torture/compile/pr61222-1.c: New test.
* gcc.c-torture/compile/pr61222-2.c: Likewise.

From-SVN: r210945

10 years agopr61191.c: Fix dg-error directives.
Uros Bizjak [Mon, 26 May 2014 18:44:18 +0000 (20:44 +0200)]
pr61191.c: Fix dg-error directives.

* c-c++-common/cilk-plus/AN/pr61191.c: Fix dg-error directives.

From-SVN: r210944

10 years agopr61278_1.c: Remove dg directives.
Uros Bizjak [Mon, 26 May 2014 18:23:36 +0000 (20:23 +0200)]
pr61278_1.c: Remove dg directives.

* gcc.dg/lto/pr61278_1.c: Remove dg directives.

From-SVN: r210939

10 years agoPR 61310 Rewrite implementation of CTIME and FDATE intrinsics.
Janne Blomqvist [Mon, 26 May 2014 18:17:13 +0000 (21:17 +0300)]
PR 61310 Rewrite implementation of CTIME and FDATE intrinsics.

2014-05-26  Janne Blomqvist  <jb@gcc.gnu.org>

PR libfortran/61310
* intrinsics.texi (CTIME): Remove mention of locale-dependent
behavior.

2014-05-26  Janne Blomqvist  <jb@gcc.gnu.org>

PR libfortran/61310
* intrinsics/ctime.c (strctime): Rename to gf_ctime, use snprintf
instead of strftime.
(fdate): Use gf_ctime.
(fdate_sub): Likewise.
(ctime): Likewise.
(ctime_sub): Likewise.

From-SVN: r210938

10 years agore PR c/61271 (10 * possible coding error with logical not (!))
Uros Bizjak [Mon, 26 May 2014 17:33:09 +0000 (19:33 +0200)]
re PR c/61271 (10 * possible coding error with logical not (!))

PR target/61271
* config/i386/i386.c (ix86_rtx_costs)
<case CONST_INT, case CONST, case LABEL_REF, case SYMBOL_REF>:
Fix condition.

From-SVN: r210937

10 years agoira.c (split_live_ranges_for_shrink_wrap): Remove bailout on subreg uses.
Martin Jambor [Mon, 26 May 2014 15:36:00 +0000 (17:36 +0200)]
ira.c (split_live_ranges_for_shrink_wrap): Remove bailout on subreg uses.

2014-05-26  Martin Jambor  <mjambor@suse.cz>

* ira.c (split_live_ranges_for_shrink_wrap): Remove bailout on
subreg uses.

From-SVN: r210936

10 years agore PR fortran/55117 (Programs fails to read namelist (contains derived types objects))
Jerry DeLisle [Mon, 26 May 2014 15:32:33 +0000 (15:32 +0000)]
re PR fortran/55117 (Programs fails to read namelist (contains derived types objects))

2014-05-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/55117
* gfortran.dg/namelist_85.f90: New test.

From-SVN: r210935

10 years ago[multiple changes]
Jerry DeLisle [Mon, 26 May 2014 15:19:36 +0000 (15:19 +0000)]
[multiple changes]

2014-05-26  Tobias Burnus  <burnus@net-b.de>

PR fortran/55117
* trans-io.c (nml_full_name, transfer_namelist_element): Insert
a '+' rather then '%' to differentiate namelist variable names
that are based on extended derived types.

2014-05-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/55117
* io/list_read.c (extended_look_ahead): New helper function to
scan the namelist name and look for matches with the new '+'
extended type parent indicator.  (str_comp_extended): New
helper function to compare the namelist name with the varname
namelist. (find_nml_name): Use the new helper functions to match
the extended type varnames.

From-SVN: r210934

10 years agowide-int.h (wi::int_traits <long>, [...]): Provide specializations.
Richard Biener [Mon, 26 May 2014 14:07:42 +0000 (14:07 +0000)]
wide-int.h (wi::int_traits <long>, [...]): Provide specializations.

2014-05-26  Richard Biener  <rguenther@suse.de>

* wide-int.h (wi::int_traits <long>, wi::int_traits <unsigned long>,
wi::int_traits <long long>, wi::int_traits <unsigned long long>):
Provide specializations.
(wi::int_traits <HOST_WIDE_INT>,
wi::int_traits <unsigned HOST_WIDE_INT>): Remove specializations.

From-SVN: r210933

10 years agore PR target/61098 (Poor code setting count register for large loops)
Alan Modra [Mon, 26 May 2014 13:09:48 +0000 (22:39 +0930)]
re PR target/61098 (Poor code setting count register for large loops)

PR target/61098
* config/rs6000/rs6000.c (rs6000_emit_set_const): Remove unneeded
params and return a bool.  Remove dead code.  Update comment.
Assert we have a const_int source.  Remove bogus code from
32-bit HWI days.  Move !TARGET_POWERPC64 handling, and correct
handling of constants > 2G and reg_equal note, from..
(rs6000_emit_set_long_const): ..here.  Remove unneeded param and
return value.  Update comment.  If we can, use a new pseudo
for intermediate calculations.
* config/rs6000/rs6000-protos.h (rs6000_emit_set_const): Update
prototype.
* config/rs6000/rs6000.md (movsi_internal1_single+1): Update
call to rs6000_emit_set_const in splitter.
(movdi_internal64+2, +3): Likewise.

From-SVN: r210932

10 years agosystem.h: Define __STDC_FORMAT_MACROS before including inttypes.h.
Richard Biener [Mon, 26 May 2014 10:42:43 +0000 (10:42 +0000)]
system.h: Define __STDC_FORMAT_MACROS before including inttypes.h.

2014-05-23  Richard Biener  <rguenther@suse.de>

* system.h: Define __STDC_FORMAT_MACROS before
including inttypes.h.
* hwint.h (HOST_WIDEST_INT, HOST_BITS_PER_WIDEST_INT,
HOST_WIDEST_INT_PRINT, HOST_WIDEST_INT_PRINT_DEC,
HOST_WIDEST_INT_PRINT_DEC_C, HOST_WIDEST_INT_PRINT_UNSIGNED,
HOST_WIDEST_INT_PRINT_HEX, HOST_WIDEST_INT_PRINT_DOUBLE_HEX,
HOST_WIDEST_INT_C): Remove.
(PRId64, PRIi64, PRIo64, PRIu64, PRIx64, PRIX64): Define
if C99 inttypes.h is not available.

* coretypes.h (gcov_type, gcov_type_unsigned): Use [u]int64_t.
* gcov-io.h (gcov_type, gcov_type_unsigned): Likewise.
* gcov-io.c (gcov_histo_index): Drop non-64bit hwi case.
* cfgloop.h (struct niter_desc): Use uint64_t for niter field.
* bitmap.c (struct bitmap_descriptor_d): Use uint64_t for counters.
(struct output_info): Likewise.
(print_statistics): Adjust.
(dump_bitmap_statistics): Likewise.
* bt-load.c (migrate_btr_defs): Print with PRId64.
* cfg.c (dump_edge_info, dump_bb_info): Likewise.
(MAX_SAFE_MULTIPLIER): Adjust.
* cfghooks.c (dump_bb_for_graph): Print with PRId64.
* cgraph.c (cgraph_redirect_edge_call_stmt_to_callee,
dump_cgraph_node): Likewise.
* final.c (dump_basic_block_info): Likewise.
* gcov-dump.c (tag_counters, tag_summary, dump_working_sets): Likewise.
* gcov.c (format_gcov): Likewise.
* ipa-cp.c (good_cloning_opportunity_p): Likewise.  Use int64_t
for calculation.
(get_clone_agg_value): Use HOST_WIDE_INT for offset.
* ipa-inline.c (compute_max_insns): Use int64_t for calcuation.
(inline_small_functions, dump_overall_stats, dump_inline_stats):
Use PRId64 for dumping.
* ipa-profile.c (dump_histogram, ipa_profile): Likewise.
* ira-color.c (struct allocno_hard_regs): Use int64_t for cost.
(add_allocno_hard_regs): Adjust.
* loop-doloop.c (doloop_modify): Print using PRId64.
* loop-iv.c (inverse): Compute in uint64_t.
(determine_max_iter, iv_number_of_iterations): Likewise.
* loop-unroll.c (decide_peel_completely, decide_peel_simple):
Print using PRId64.
* lto-streamer-out.c (write_symbol): Use uint64_t.
* mcf.c (CAP_INFINITY): Use int64_t maximum.
(dump_fixup_edge, create_fixup_graph, cancel_negative_cycle,
find_max_flow, adjust_cfg_counts): Use int64_t and dump with PRId64.
* modulo-sched.c (const_iteration_count): Use int64_t.
(sms_schedule): Dump using PRId64.
* predict.c (dump_prediction): Likewise.
* pretty-print.h (pp_widest_integer): Remove.
* profile.c (get_working_sets, is_edge_inconsistent,
is_inconsistent, read_profile_edge_counts): Dump using PRId64.
* tree-pretty-print.c (pp_double_int): Remove case handling
HOST_BITS_PER_DOUBLE_INT == HOST_BITS_PER_WIDEST_INT.
* tree-ssa-math-opts.c (struct symbolic_number): Use uint64_t
and adjust users.
(pass_optimize_bswap::execute): Remove restriction on hosts.
* tree-streamer-in.c (streamer_alloc_tree): Use HOST_WIDE_INT.
* tree-streamer-out.c (streamer_write_tree_header): Likewise.
* tree.c (widest_int_cst_value): Remove.
* tree.h (widest_int_cst_value): Likewise.
* value-prof.c (dump_histogram_value): Print using PRId64.
* gengtype.c (main): Also inject int64_t.
* ggc-page.c (struct max_alignment): Use int64_t.
* alloc-pool.c (struct allocation_object_def): Likewise.
* ira-conflicts.c (build_conflict_bit_table): Use uint64_t
for computation.
* doc/tm.texi.in: Remove reference to HOST_WIDEST_INT.
* doc/tm.texi: Regenerated.
* gengtype-lex.l (IWORD): Handle [u]int64_t.
* config/sh/sh.c (expand_cbranchdi4): Use gcov_type.
* config/mmix/mmix-protos.h (mmix_intval, mmix_shiftable_wyde_value,
mmix_output_register_setting): Use [u]int64_t in prototypes.
* config/mmix/mmix.c (mmix_print_operand, mmix_output_register_setting,
mmix_shiftable_wyde_value, mmix_output_shiftvalue_op_from_str,
mmix_output_octa, mmix_output_shifted_value): Adjust.
(mmix_intval): Adjust.  Remove unreachable case.
* config/mmix/mmix.md (*nonlocal_goto_receiver_expanded): Use
int64_t.

lto/
* lto.c (lto_parse_hex): Use int64_t.
(lto_resolution_read): Likewise.

From-SVN: r210931

10 years agore PR c/61191 (cilkplus ICE on syntax error)
Igor Zamyatin [Mon, 26 May 2014 10:04:01 +0000 (10:04 +0000)]
re PR c/61191 (cilkplus ICE on syntax error)

gcc/c/
PR c/61191
* c-array-notation.c (fix_builtin_array_notation_fn): Check invalid
function parameters.

gcc/testsuite/
PR c/61191
* c-c++-common/cilk-plus/AN/pr61191.c: Check for correct handling of
the case with syntax error.

From-SVN: r210930

10 years agoconfigure.ac: Remove long long and __int64 type checks...
Richard Biener [Mon, 26 May 2014 08:19:02 +0000 (08:19 +0000)]
configure.ac: Remove long long and __int64 type checks...

2014-05-26  Richard Biener  <rguenther@suse.de>

libcpp/
* configure.ac: Remove long long and __int64 type checks,
add check for uint64_t and fail if that wasn't found.
* include/cpplib.h (cpp_num_part): Use uint64_t.
* config.in: Regenerate.
* configure: Likewise.

gcc/
* configure.ac: Drop __int64 type check.  Insist that we
found uint64_t and int64_t.
* hwint.h (HOST_BITS_PER___INT64): Remove.
(HOST_BITS_PER_WIDE_INT): Define to 64 and remove
__int64 case.
(HOST_WIDE_INT_PRINT_*): Remove 32bit case.
(HOST_WIDEST_INT*): Define to HOST_WIDE_INT*.
(HOST_WIDEST_FAST_INT): Remove __int64 case.
* vmsdbg.h (struct _DST_SRC_COMMAND): Use int64_t
for dst_q_src_df_rms_cdt.
* configure: Regenerate.
* config.in: Likewise.

From-SVN: r210928

10 years ago* ChangeLog: Fix last entry.
Uros Bizjak [Mon, 26 May 2014 07:47:14 +0000 (09:47 +0200)]
* ChangeLog: Fix last entry.

From-SVN: r210927

10 years agore PR target/61249 (_mm_frcz_ss, _mm_frcz_sd: __builtin_ia32_vfrczss, __builtin_ia32_...
Michael Tautschnig [Mon, 26 May 2014 07:19:25 +0000 (09:19 +0200)]
re PR target/61249 (_mm_frcz_ss, _mm_frcz_sd: __builtin_ia32_vfrczss, __builtin_ia32_vfrczsd require 2 arguments)

PR target/61249
* doc/extend.texi: Fix parameter lists of __builtin_ia32_vfrczs[sd],
__builtin_ia32_mpsadbw256.

From-SVN: r210923

10 years agore PR rtl-optimization/61278 (ICE with LTO (lto-wrapper failed) on x86_64-linux-gnu...
Zhenqiang Chen [Mon, 26 May 2014 06:40:57 +0000 (06:40 +0000)]
re PR rtl-optimization/61278 (ICE with LTO (lto-wrapper failed) on x86_64-linux-gnu in 64-bit mode)

ChangeLog:
2014-05-26  Zhenqiang Chen  <zhenqiang.chen@linaro.org>

PR rtl-optimization/61278
* shrink-wrap.c (move_insn_for_shrink_wrap): Check df_live.

testsuite/ChangeLog:
2014-05-26  Zhenqiang Chen  <zhenqiang.chen@linaro.org>

* gcc.dg/lto/pr61278_0.c: New test.
* gcc.dg/lto/pr61278_1.c: New test.

From-SVN: r210922

10 years agore PR rtl-optimization/61220 (ICE on valid code at -O2 on x86_64-linux-gnu in maybe_r...
Zhenqiang Chen [Mon, 26 May 2014 06:11:33 +0000 (06:11 +0000)]
re PR rtl-optimization/61220 (ICE on valid code at -O2 on x86_64-linux-gnu in maybe_record_trace_start, at dwarf2cfi.c:2239)

ChangeLog:
2014-05-26  Zhenqiang Chen  <zhenqiang.chen@linaro.org>

PR rtl-optimization/61220
Part of PR rtl-optimization/61225
* shrink-wrap.c (move_insn_for_shrink_wrap): Skip SP and FP adjustment
insn; skip split_edge for a block with only one successor.

testsuite/ChangeLog:
2014-05-26  Zhenqiang Chen  <zhenqiang.chen@linaro.org>

* gcc.dg/pr61220.c: New test.
* gcc.dg/shrink-wrap-loop.c: Disable for x86_64 -m32 mode.

From-SVN: r210921

10 years ago* symtab.c (symtab_nonoverwritable_alias): Copy READONLY flag for variables.
Jan Hubicka [Mon, 26 May 2014 00:50:24 +0000 (02:50 +0200)]
* symtab.c (symtab_nonoverwritable_alias): Copy READONLY flag for variables.

From-SVN: r210919

10 years agoDaily bump.
GCC Administrator [Mon, 26 May 2014 00:17:21 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r210918

10 years agodg-extract-results.py (Named): Remove __cmp__ method.
Richard Sandiford [Sun, 25 May 2014 09:35:15 +0000 (09:35 +0000)]
dg-extract-results.py (Named): Remove __cmp__ method.

contrib/
* dg-extract-results.py (Named): Remove __cmp__ method.
(output_variation): Use a key to sort variation.harnesses.

From-SVN: r210913

10 years agomap.h: Fix typo in comment; minor formatting fix.
Paolo Carlini [Sun, 25 May 2014 08:38:01 +0000 (08:38 +0000)]
map.h: Fix typo in comment; minor formatting fix.

2014-05-25  Paolo Carlini  <paolo.carlini@oracle.com>

* include/profile/map.h: Fix typo in comment; minor formatting fix.
* include/profile/multimap.h: Likewise.
* include/profile/set.h: Likewise.
* include/profile/multiset.h: Likewise.

From-SVN: r210912

10 years agoMissed the following files with commit 210909
Tobias Burnus [Sun, 25 May 2014 07:08:25 +0000 (09:08 +0200)]
Missed the following files with commit 210909
2014-05-25  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/coarray_this_image_1.f90: New.
        * gfortran.dg/coarray_this_image_2.f90: New.

From-SVN: r210911

10 years agoipa-visibility.c (can_replace_by_local_alias_in_vtable): New function.
Jan Hubicka [Sun, 25 May 2014 05:52:49 +0000 (07:52 +0200)]
ipa-visibility.c (can_replace_by_local_alias_in_vtable): New function.

* ipa-visibility.c (can_replace_by_local_alias_in_vtable): New function.
(update_vtable_references): New function.
(function_and_variable_visibility): Rewrite also vtable initializers.
* varpool.c (cgraph_variable_initializer_availability): Remove assert.

From-SVN: r210910

10 years agocheck.c (gfc_check_num_images): New.
Tobias Burnus [Sun, 25 May 2014 05:24:12 +0000 (07:24 +0200)]
check.c (gfc_check_num_images): New.

2014-05-25  Tobias Burnus  <burnus@net-b.de>

        * check.c (gfc_check_num_images): New.
        (gfc_check_this_image): Handle distance argument.
        * intrinsic.c (add_functions): Update this_image and num_images
        for new distance and failed arguments.
        * intrinsic.texi (THIS_IMAGE, NUM_IMAGES): Document the new
        arguments.
        * intrinsic.h (gfc_check_num_images): New.
        (gfc_check_this_image, gfc_simplify_num_images,
        gfc_simplify_this_image, gfc_resolve_this_image): Update prototype.
        * iresolve.c (gfc_resolve_this_image): Handle distance argument.
        * simplify.c (gfc_simplify_num_images, gfc_simplify_this_image):
        Handle new arguments.
        * trans-intrinsic.c (trans_this_image, trans_num_images): Ditto.
        (gfc_conv_intrinsic_function): Update trans_num_images call.

2014-05-25  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/coarray_10.f90: Update dg-warning.
        * gfortran.dg/coarray_this_image_1.f90: New.
        * gfortran.dg/coarray_this_image_2.f90: New.

From-SVN: r210909

10 years agoggc.h (ggc_grow): New function.
Jan Hubicka [Sun, 25 May 2014 02:58:54 +0000 (04:58 +0200)]
ggc.h (ggc_grow): New function.

* ggc.h (ggc_grow): New function.
* ggc-none.c (ggc_grow): New function.
* ggc-page.c (ggc_grow): Likewise.
* lto.c (read_cgraph_and_symbols): Grow ggc memory after streaming.

From-SVN: r210908

10 years agoipa.c (cgraph_non_local_node_p_1, [...]): Move to ipa-visibility.c
Jan Hubicka [Sun, 25 May 2014 01:33:28 +0000 (03:33 +0200)]
ipa.c (cgraph_non_local_node_p_1, [...]): Move to ipa-visibility.c

* ipa.c (cgraph_non_local_node_p_1, cgraph_local_node_p, address_taken_from_non_vtable_p,
comdat_can_be_unshared_p_1, comdat_can_be_unshared_p, cgraph_externally_visible_p,
varpool_externally_visible_p, can_replace_by_local_alias,
update_visibility_by_resolution_info, function_and_variable_visibility,
pass_data_ipa_function_and_variable_visibility,
make_pass_ipa_function_and_variable_visibility,
whole_program_function_and_variable_visibility,
pass_data_ipa_whole_program_visibility,
make_pass_ipa_whole_program_visibility): Move to ipa-visibility.c
* cgraph.h (cgraph_local_node_p): Declare.
* ipa-visibility.c: New file.
* Makefile.in (OBJS): Add ipa-visiblity.o

From-SVN: r210907

10 years agoDaily bump.
GCC Administrator [Sun, 25 May 2014 00:16:39 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r210906

10 years agogimple-fold.c (can_refer_decl_in_current_unit_p): Be sure that var decl is available.
Jan Hubicka [Sat, 24 May 2014 22:02:13 +0000 (00:02 +0200)]
gimple-fold.c (can_refer_decl_in_current_unit_p): Be sure that var decl is available.

* gimple-fold.c (can_refer_decl_in_current_unit_p): Be sure
that var decl is available.

From-SVN: r210902

10 years agotree-core.h (tree_decl_with_vis): Replace comdat_group by symtab_node pointer.
Jan Hubicka [Sat, 24 May 2014 22:00:14 +0000 (00:00 +0200)]
tree-core.h (tree_decl_with_vis): Replace comdat_group by symtab_node pointer.

* tree-core.h (tree_decl_with_vis): Replace comdat_group by
symtab_node pointer.
* tree.c (copy_node_stat): Be sure tonot copy
symtab_node pointer.
(find_decls_types_r): Do not walk COMDAT_GROUP.
* tree.h (DECL_COMDAT_GROUP): Revamp to use decl_comdat_group.
* varasm.c (make_decl_one_only): Use set_comdat_group;
create node if needed.
* ipa-inline-transform.c (save_inline_function_body): Update
way we decl->symtab mapping.
* symtab.c (symtab_hash, hash_node, eq_node
symtab_insert_node_to_hashtable): Remove.
(symtab_register_node): Update.
(symtab_unregister_node): Update.
(symtab_get_node): Reimplement as inline function.
(symtab_add_to_same_comdat_group): Update.
(symtab_dissolve_same_comdat_group_list): Update.
(dump_symtab_base): Update.
(verify_symtab_base): Update.
(symtab_make_decl_local): Update.
(fixup_same_cpp_alias_visibility): Update.
(symtab_nonoverwritable_alias): Update.
* cgraphclones.c (set_new_clone_decl_and_node_flags): Update.
* ipa.c (update_visibility_by_resolution_info): UPdate.
* bb-reorder.c: Include cgraph.h
* lto-streamer-out.c (DFS_write_tree_body, hash_tree): Do not deal
with comdat groups.
* ipa-comdats.c (set_comdat_group, ipa_comdats): Update.
* cgraph.c (cgraph_get_create_node): Update.
* cgraph.h (struct symtab_node): Add get_comdat_group, set_comdat_group
and comdat_group_.
(symtab_get_node): Make inline.
(symtab_insert_node_to_hashtable): Remove.
(symtab_can_be_discarded): Update.
(decl_comdat_group): New function.
* tree-streamer-in.c (lto_input_ts_decl_with_vis_tree_pointers): Update.
* lto-cgraph.c (lto_output_node, lto_output_varpool_node): Stream out
comdat group name.
(read_comdat_group): New function.
(input_node, input_varpool_node): Use it.
* trans-mem.c (ipa_tm_create_version_alias): Update code creating
comdat groups.
* mips.c (mips_start_unique_function): Likewise.
(ix86_code_end): Likewise.
(rs6000_code_end): Likweise.
* tree-streamer-out.c (DECL_COMDAT_GROUP): Do not stream
comdat group.

* lto-symtab.c (lto_symtab_merge_symbols): Update code setting
symtab pointer.
* lto.c (compare_tree_sccs_1): Do not compare comdat groups.

* optmize.c (maybe_thunk_body): Use set_comdat_group.
(maybe_clone_body): Likewise.
* decl.c (duplicate_decls): Update code duplicating comdat group;
do not copy symtab pointer; before freeing newdecl remove it
from symtab.
* decl2.c (constrain_visibility): Use set_comdat_group.

* c-decl.c (merge_decls): Preserve symtab node pointers.
(duplicate_decls): Free new decl.

From-SVN: r210901

10 years agoarray: Clean useless white chars.
François Dumont [Sat, 24 May 2014 20:59:00 +0000 (20:59 +0000)]
array: Clean useless white chars.

2014-05-24  François Dumont  <fdumont@gcc.gnu.org>

* include/profile/array: Clean useless white chars.
* include/profile/base.h: Likewise.
* include/profile/iterator_tracker.h: Likewise.
* include/profile/bitset: Code cleanup and remove not instrumented code.
* include/profile/deque: Likewise.
* include/profile/forward_list: Likewise.
* include/profile/list (std::__profile::_List_profile<>): New.
(std::__profile::list<>): Inherit from latter and adapt.
* include/profile/impl/profiler_map_to_unordered_map.h: Generalize
advise to match any ordered to unordered container conversion.
* include/profile/ordered_base.h (std::__profile::_Ordered_profile<>):
New.
* include/Makefile.am: Add latter.
* include/Makefile.in: Regenerate.
* include/profile/map.h (std::__profile::map<>): Inherit from latter,
remove not instrumented code.
* include/profile/multimap.h (std::__profile::multimap<>): Likewise.
* include/profile/set.h (std::__profile::set<>): Likewise.
* include/profile/multiset.h (std::__profile::multiset<>): Likewise.
* include/profile/unordered_base.h: Add some line feed.
* include/profile/unordered_map: Clean useless white chars and replace
spaces with tabs.
* include/profile/unordered_set: Likewise.
* include/profile/vector (std::__profile::_Vector_profile_pre<>): New.
(std::__profile::_Vector_profile_post<>): New.
(std::__profile::vector<>): Inherit from latter and adapt.

From-SVN: r210900

10 years agore PR libfortran/61173 (Erroneous "end of file" with internal read)
Jerry DeLisle [Sat, 24 May 2014 19:30:38 +0000 (19:30 +0000)]
re PR libfortran/61173 (Erroneous "end of file" with internal read)

2014-05-24  Jerry DeLisle  <jvdelisle@gcc.gnu>

PR libfortran/61173
gfortran.dg/arrayio_14.f90: New test.

From-SVN: r210899

10 years agore PR libfortran/61173 (Erroneous "end of file" with internal read)
Jerry DeLisle [Sat, 24 May 2014 19:26:02 +0000 (19:26 +0000)]
re PR libfortran/61173 (Erroneous "end of file" with internal read)

2014-05-23  Jerry DeLisle  <jvdelisle@gcc.gnu>

PR libfortran/61173
* io/list_read.c (eat_spaces): If the next character pointed to
is a space, don't seek, must be at the end.

From-SVN: r210898

10 years agobswap-2.c (main): Handle more bitfield layouts.
Andreas Schwab [Sat, 24 May 2014 18:54:28 +0000 (18:54 +0000)]
bswap-2.c (main): Handle more bitfield layouts.

* gcc.c-torture/execute/bswap-2.c (main): Handle more bitfield
layouts.

From-SVN: r210897

10 years agogengtype-state.c (fatal_reading_state): Bring offline.
Jan Hubicka [Sat, 24 May 2014 17:12:28 +0000 (19:12 +0200)]
gengtype-state.c (fatal_reading_state): Bring offline.

* gengtype-state.c (fatal_reading_state): Bring offline.
* optabs.c (widening_optab_handler): Bring offline.
* optabs.h (widening_optab_handler): Likewise.
* final.c (get_attr_length_1): Likewise.

From-SVN: r210896

10 years ago* sched-int.h (sd_iterator_cond): Manually tail recurse.
Jan Hubicka [Sat, 24 May 2014 17:11:35 +0000 (19:11 +0200)]
* sched-int.h (sd_iterator_cond): Manually tail recurse.

From-SVN: r210895

10 years agobind_c_array_params_2.f90: Adjust regexp for -flto.
Dominique d'Humieres [Sat, 24 May 2014 14:17:37 +0000 (16:17 +0200)]
bind_c_array_params_2.f90: Adjust regexp for -flto.

2014-05-24  Dominique d'Humieres <dominiq@lps.ens.fr>

* gfortran.dg/gfortran.dg/bind_c_array_params_2.f90:
Adjust regexp for -flto.
* gfortran.dg/gfortran.dg/pr48636-2.f90: Likewise.
* gfortran.dg/pr52835.f90: Likewise.

From-SVN: r210892

10 years agotexi2pod.pl: Force .pod file to not be a numbered list.
Uros Bizjak [Sat, 24 May 2014 06:38:31 +0000 (08:38 +0200)]
texi2pod.pl: Force .pod file to not be a numbered list.

* texi2pod.pl: Force .pod file to not be a numbered list.

From-SVN: r210889

10 years agortti.c: Include tm_p.h
Jan Hubicka [Sat, 24 May 2014 01:42:22 +0000 (03:42 +0200)]
rtti.c: Include tm_p.h

* rtti.c: Include tm_p.h
(emit_tinfo_decl): Force RTTI data to be aligned to required
ABI alignment only.

From-SVN: r210887

10 years agoclass.c (build_vtable): Align vtables to TARGET_VTABLE_ENTRY_ALIGN ignoring other...
Jan Hubicka [Sat, 24 May 2014 01:41:06 +0000 (03:41 +0200)]
class.c (build_vtable): Align vtables to TARGET_VTABLE_ENTRY_ALIGN ignoring other target adjustments.

* class.c (build_vtable): Align vtables to TARGET_VTABLE_ENTRY_ALIGN
ignoring other target adjustments.

From-SVN: r210886

10 years agoDaily bump.
GCC Administrator [Sat, 24 May 2014 00:17:02 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r210885

10 years agogfc-internals.texi: Change URLs to HTTPS; fix broken links.
Tobias Burnus [Fri, 23 May 2014 20:32:04 +0000 (22:32 +0200)]
gfc-internals.texi: Change URLs to HTTPS; fix broken links.

2014-05-23  Tobias Burnus  <burnus@net-b.de>

        * gfc-internals.texi: Change URLs to HTTPS; fix broken links.
        * gfortran.texi: Ditto.

From-SVN: r210877

10 years agors6000: Make all rlw*nm and rld*c* type shift
Segher Boessenkool [Fri, 23 May 2014 16:46:59 +0000 (18:46 +0200)]
rs6000: Make all rlw*nm and rld*c* type shift

They are often labeled just "integer" currently.  Fix that.

Also handle shift properly in those scheduling descriptions that
neglected it.

From-SVN: r210873

10 years agors6000: Make all logical instructions one type
Segher Boessenkool [Fri, 23 May 2014 16:45:11 +0000 (18:45 +0200)]
rs6000: Make all logical instructions one type

They are currently just "integer", but the dot version is fast_compare.
This makes them all "logical".

From-SVN: r210872

10 years agors6000: Make all add instructions one type
Segher Boessenkool [Fri, 23 May 2014 16:43:31 +0000 (18:43 +0200)]
rs6000: Make all add instructions one type

They are currently just "integer", but the dot version is fast_compare.
This makes them all "add".  Later we should introduce attributes to
distinguish e.g. addc and adde (which aren't currently handled as
separate instructions at all, only in groups).

From-SVN: r210871

10 years agors6000: Make all shift instructions one type
Segher Boessenkool [Fri, 23 May 2014 16:41:20 +0000 (18:41 +0200)]
rs6000: Make all shift instructions one type

This uses the attributes "var_shift" and "dot" to specify the differences:

var_shift_rotate    -> shift var_shift=yes
delayed_compare     -> shift var_shift=no  dot=yes
var_delayed_compare -> shift var_shift=yes dot=yes

From-SVN: r210870

10 years agors6000: Make all divide instructions one type
Segher Boessenkool [Fri, 23 May 2014 16:39:42 +0000 (18:39 +0200)]
rs6000: Make all divide instructions one type

This uses the attribute "size" to specify the differences:

idiv -> div size=32
ldiv -> div size=64

It could use "dot" as well, but the current code doesn't handle that.

From-SVN: r210869

10 years agors6000: Make all insert instructions one type
Segher Boessenkool [Fri, 23 May 2014 16:37:55 +0000 (18:37 +0200)]
rs6000: Make all insert instructions one type

This uses the attribute "size" to specify the differences:

insert_word  -> insert size=32
insert_dword -> insert size=64

It could use "dot" as well, but the current code doesn't handle that.

From-SVN: r210868

10 years agors6000: Make all multiply instructions one type
Segher Boessenkool [Fri, 23 May 2014 16:36:14 +0000 (18:36 +0200)]
rs6000: Make all multiply instructions one type

This uses the attributes "size" and "dot" to specify the differences:

imul3 -> mul size=8
imul2 -> mul size=16
imul -> mul size=32
lmul -> mul size=64
imul_compare -> mul size=32 dot=yes
lmul_compare -> mul size=64 dot=yes

From-SVN: r210867

10 years agors6000: New type attribute value "halfmul"
Segher Boessenkool [Fri, 23 May 2014 16:34:01 +0000 (18:34 +0200)]
rs6000: New type attribute value "halfmul"

This is for the legacy integer multiply-accumulate instructions.
Quite a mouthful, and "mulhw" is also a terrible name since we already
have a machine instruction called exactly that.  Hence "halfmul".

Also fixes the titan automaton description for this.

From-SVN: r210866

10 years ago[PATCH 1/9] rs6000: Clean up the "type" attribute
Segher Boessenkool [Fri, 23 May 2014 16:31:33 +0000 (18:31 +0200)]
[PATCH 1/9] rs6000: Clean up the "type" attribute

Get rid of the one huge line.  Group and order things a bit.  Further
changes will follow so this doesn't try to make it perfect.

From-SVN: r210865

10 years agore PR tree-optimization/53787 (Possible IPA-SRA / IPA-CP improvement)
Martin Jambor [Fri, 23 May 2014 15:52:20 +0000 (17:52 +0200)]
re PR tree-optimization/53787 (Possible IPA-SRA / IPA-CP improvement)

2014-05-23  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/53787
* params.def (PARAM_IPA_MAX_AA_STEPS): New param.
* ipa-prop.h (ipa_node_params): Rename uses_analysis_done to
analysis_done, update all uses.
* ipa-prop.c: Include domwalk.h
(param_analysis_info): Removed.
(param_aa_status): New type.
(ipa_bb_info): Likewise.
(func_body_info): Likewise.
(ipa_get_bb_info): New function.
(aa_overwalked): Likewise.
(find_dominating_aa_status): Likewise.
(parm_bb_aa_status_for_bb): Likewise.
(parm_preserved_before_stmt_p): Changed to use new param AA info.
(load_from_unmodified_param): Accept func_body_info as a parameter
instead of parms_ainfo.
(parm_ref_data_preserved_p): Changed to use new param AA info.
(parm_ref_data_pass_through_p): Likewise.
(ipa_load_from_parm_agg_1): Likewise.  Update callers.
(compute_complex_assign_jump_func): Changed to use new param AA info.
(compute_complex_ancestor_jump_func): Likewise.
(ipa_compute_jump_functions_for_edge): Likewise.
(ipa_compute_jump_functions): Removed.
(ipa_compute_jump_functions_for_bb): New function.
(ipa_analyze_indirect_call_uses): Likewise, moved variable
declarations down.
(ipa_analyze_virtual_call_uses): Accept func_body_info instead of node
and info, moved variable declarations down.
(ipa_analyze_call_uses): Accept and pass on func_body_info instead of
node and info.
(ipa_analyze_stmt_uses): Likewise.
(ipa_analyze_params_uses): Removed.
(ipa_analyze_params_uses_in_bb): New function.
(ipa_analyze_controlled_uses): Likewise.
(free_ipa_bb_info): Likewise.
(analysis_dom_walker): New class.
(ipa_analyze_node): Handle node-specific forbidden analysis,
initialize and free func_body_info, use dominator walker.
(ipcp_modif_dom_walker): New class.
(ipcp_transform_function): Create and free func_body_info, use
ipcp_modif_dom_walker, moved a lot of functionality there.

From-SVN: r210864

10 years agore PR rtl-optimization/61215 (ICE in gen_add2_insn, at optabs.c:4718 when building...
Vladimir Makarov [Fri, 23 May 2014 15:34:03 +0000 (15:34 +0000)]
re PR rtl-optimization/61215 (ICE in gen_add2_insn, at optabs.c:4718 when building wine-1.7.19)

2014-05-23  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/61215
* gcc.target/i386/pr61215.c: New.

From-SVN: r210863

10 years agobuiltins.def: Change SANITIZE_FLOAT_DIVIDE to SANITIZE_NONDEFAULT.
Marek Polacek [Fri, 23 May 2014 14:44:42 +0000 (14:44 +0000)]
builtins.def: Change SANITIZE_FLOAT_DIVIDE to SANITIZE_NONDEFAULT.

* builtins.def: Change SANITIZE_FLOAT_DIVIDE to SANITIZE_NONDEFAULT.
* gcc.c (sanitize_spec_function): Likewise.
* convert.c (convert_to_integer): Include "ubsan.h".  Add
floating-point to integer instrumentation.
* doc/invoke.texi: Document -fsanitize=float-cast-overflow.
* flag-types.h (enum sanitize_code): Add SANITIZE_FLOAT_CAST and
SANITIZE_NONDEFAULT.
* opts.c (common_handle_option): Handle -fsanitize=float-cast-overflow.
* sanitizer.def (BUILT_IN_UBSAN_HANDLE_FLOAT_CAST_OVERFLOW,
BUILT_IN_UBSAN_HANDLE_FLOAT_CAST_OVERFLOW_ABORT): Add.
* ubsan.c: Include "realmpfr.h" and "dfp.h".
(get_ubsan_type_info_for_type): Handle REAL_TYPEs.
(ubsan_type_descriptor): Set tkind to 0xffff for types other than
float/double/long double.
(ubsan_instrument_float_cast): New function.
* ubsan.h (ubsan_instrument_float_cast): Declare.
testsuite/
* c-c++-common/ubsan/float-cast-overflow-1.c: New test.
* c-c++-common/ubsan/float-cast-overflow-10.c: New test.
* c-c++-common/ubsan/float-cast-overflow-2.c: New test.
* c-c++-common/ubsan/float-cast-overflow-3.c: New test.
* c-c++-common/ubsan/float-cast-overflow-4.c: New test.
* c-c++-common/ubsan/float-cast-overflow-5.c: New test.
* c-c++-common/ubsan/float-cast-overflow-6.c: New test.
* c-c++-common/ubsan/float-cast-overflow-7.c: New test.
* c-c++-common/ubsan/float-cast-overflow-7.h: New file.
* c-c++-common/ubsan/float-cast-overflow-8.c: New test.
* c-c++-common/ubsan/float-cast-overflow-9.c: New test.
* c-c++-common/ubsan/float-cast.h: New file.
* g++.dg/ubsan/float-cast-overflow-bf.C: New test.
* gcc.dg/ubsan/float-cast-overflow-bf.c: New test.
libsanitizer/
* ubsan/ubsan_value.cc (getFloatValue): Handle 96-bit
floating-point types.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r210862

10 years ago[AARCH64] Support tail indirect function call.
Jiong Wang [Fri, 23 May 2014 12:13:56 +0000 (12:13 +0000)]
[AARCH64] Support tail indirect function call.

From-SVN: r210861

10 years agoBe a bit less explicit.
Thomas Schwinge [Fri, 23 May 2014 12:06:48 +0000 (14:06 +0200)]
Be a bit less explicit.

gcc/
* gimplify.c (omp_notice_variable) <case OMP_CLAUSE_DEFAULT_NONE>:
Rewrite check for ORT_PARALLEL and ORT_COMBINED_PARALLEL.

From-SVN: r210860

10 years ago54297.cc: Remove duplicate dragonfly selector.
Jonathan Wakely [Fri, 23 May 2014 11:49:26 +0000 (12:49 +0100)]
54297.cc: Remove duplicate dragonfly selector.

* testsuite/30_threads/async/54297.cc: Remove duplicate dragonfly
selector.
* testsuite/30_threads/call_once/60497.cc: Likewise.
* testsuite/30_threads/condition_variable/54185.cc: Likewise.
* testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
* testsuite/30_threads/packaged_task/60564.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
* testsuite/30_threads/promise/60966.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
* testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
* testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
* testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
* testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
* testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
* testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
* testsuite/30_threads/shared_lock/modifiers/2.cc: Likewise.
* testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/shared_timed_mutex/try_lock/1.cc:
* testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.

From-SVN: r210859

10 years agoMake it easier to diff expand_omp_for_* functions.
Thomas Schwinge [Fri, 23 May 2014 11:39:35 +0000 (13:39 +0200)]
Make it easier to diff expand_omp_for_* functions.

gcc/
* omp-low.c (expand_omp_for_static_chunk): Rename variable si to
gsi, and variables v_* to v*.

From-SVN: r210858

10 years agolambda-init9.C: New.
Paolo Carlini [Fri, 23 May 2014 11:37:57 +0000 (11:37 +0000)]
lambda-init9.C: New.

2014-05-23  Paolo Carlini  <paolo.carlini@oracle.com>

* g++.dg/cpp1y/lambda-init9.C: New.

From-SVN: r210857

10 years ago* varasm.c (output_constructor_bitfield): Fix thinkos in latest change.
Eric Botcazou [Fri, 23 May 2014 11:33:42 +0000 (11:33 +0000)]
* varasm.c (output_constructor_bitfield): Fix thinkos in latest change.

From-SVN: r210856

10 years agoGF_OMP_FOR_SIMD: Flag for SIMD variants of OMP_FOR kinds.
Thomas Schwinge [Fri, 23 May 2014 11:32:01 +0000 (13:32 +0200)]
GF_OMP_FOR_SIMD: Flag for SIMD variants of OMP_FOR kinds.

gcc/
* gimple.h (enum gf_mask): Add and use GF_OMP_FOR_SIMD.
* omp-low.c: Update accordingly.

From-SVN: r210855

10 years agoJust enumerate all GF_OMP_FOR_KIND_* and GF_OMP_TARGET_KIND_*.
Thomas Schwinge [Fri, 23 May 2014 11:31:51 +0000 (13:31 +0200)]
Just enumerate all GF_OMP_FOR_KIND_* and GF_OMP_TARGET_KIND_*.

gcc/
* gimple.h (enum gf_mask): Rewrite "<< 0" shift expressions used
for GF_OMP_FOR_KIND_MASK, GF_OMP_FOR_KIND_FOR,
GF_OMP_FOR_KIND_DISTRIBUTE, GF_OMP_FOR_KIND_SIMD,
GF_OMP_FOR_KIND_CILKSIMD, GF_OMP_TARGET_KIND_MASK,
GF_OMP_TARGET_KIND_REGION, GF_OMP_TARGET_KIND_DATA,
GF_OMP_TARGET_KIND_UPDATE.

From-SVN: r210854

10 years agoRemove duplicated variable initialization.
Thomas Schwinge [Fri, 23 May 2014 11:23:49 +0000 (13:23 +0200)]
Remove duplicated variable initialization.

gcc/c/
* c-typeck.c (c_finish_omp_clauses): Remove duplicated variable
initialization.
gcc/cp/
* semantics.c (finish_omp_clauses): Remove duplicated variable
initialization.

From-SVN: r210853

10 years agoBe more explicit.
Thomas Schwinge [Fri, 23 May 2014 11:07:57 +0000 (13:07 +0200)]
Be more explicit.

gcc/
* gimplify.c (omp_notice_variable) <case OMP_CLAUSE_DEFAULT_NONE>:
Explicitly enumerate the expected region types.

From-SVN: r210852

10 years agoFix some bool vs. tree confusion.
Thomas Schwinge [Fri, 23 May 2014 11:00:31 +0000 (13:00 +0200)]
Fix some bool vs. tree confusion.

gcc/c/
* c-parser.c (c_parser_omp_target): Return bool values.
gcc/cp/
* parser.c (cp_parser_omp_target): Return bool values.

From-SVN: r210851

10 years ago1.cc: Add xfail for dragonfly.
Jonathan Wakely [Fri, 23 May 2014 10:19:32 +0000 (11:19 +0100)]
1.cc: Add xfail for dragonfly.

* testsuite/23_containers/vector/capacity/resize/1.cc: Add xfail for
dragonfly.
* testsuite/30_threads/call_once/60497.cc: Add target selectors.
* testsuite/30_threads/condition_variable/members/53841.cc: Likewise.

From-SVN: r210850

10 years agore PR libstdc++/60793 (Add target *-*-dragonfly* to dg-options on 172 libstdc++ tests)
Jonathan Wakely [Fri, 23 May 2014 10:19:20 +0000 (11:19 +0100)]
re PR libstdc++/60793 (Add target *-*-dragonfly* to dg-options on 172 libstdc++ tests)

PR libstdc++/60793
* testsuite/*: Use 's/\*-\*-freebsd\* /&*-*-dragonfly* /' to add
dragonfly target selector to all tests that run on freebsd.

From-SVN: r210849

10 years agore PR other/56955 (documentation for attribute malloc contradicts itself)
Paul Eggert [Fri, 23 May 2014 10:11:03 +0000 (10:11 +0000)]
re PR other/56955 (documentation for attribute malloc contradicts itself)

2014-05-22  Paul Eggert  <eggert@cs.ucla.edu>

PR other/56955
* doc/extend.texi (Function Attributes): Fix  __attribute__ ((malloc))
documentation; the old documentation didn't clearly state the
constraints on the contents of the pointed-to storage.

From-SVN: r210848

10 years agore PR tree-optimization/61266 (FAIL: gcc.dg/Wstrict-overflow-18.c (test for bogus...
Richard Biener [Fri, 23 May 2014 08:13:59 +0000 (08:13 +0000)]
re PR tree-optimization/61266 (FAIL: gcc.dg/Wstrict-overflow-18.c  (test for bogus messages, line 20))

2014-05-23  Richard Biener  <rguenther@suse.de>

PR testsuite/61266
* gcc.dg/Wstrict-overflow-18.c: Revert un-XFAILing and
adjust testcase to reflect reality.

From-SVN: r210846

10 years agoFix bootstrap error on ia64
Maxim Kuvyrkov [Fri, 23 May 2014 07:33:24 +0000 (07:33 +0000)]
Fix bootstrap error on ia64

* config/ia64/ia64.c (ia64_first_cycle_multipass_dfa_lookahead_guard):
Return default value.

From-SVN: r210845

10 years agore PR tree-optimization/54733 (Missing opportunity to optimize endian independent...
Thomas Preud'homme [Fri, 23 May 2014 03:33:28 +0000 (03:33 +0000)]
re PR tree-optimization/54733 (Missing opportunity to optimize endian independent load/store)

2014-05-23  Thomas Preud'homme  <thomas.preudhomme@arm.com>

PR tree-optimization/54733
gcc/
* tree-ssa-math-opts.c (nop_stats): New "bswap_stats" structure.
(CMPNOP): Define.
(find_bswap_or_nop_load): New.
(find_bswap_1): Renamed to ...
(find_bswap_or_nop_1): This. Also add support for memory source.
(find_bswap): Renamed to ...
(find_bswap_or_nop): This. Also add support for memory source and
detection of bitwise operations equivalent to load in host endianness.
(execute_optimize_bswap): Likewise. Also move its leading comment back
in place and split statement transformation into ...
(bswap_replace): This.

gcc/testsuite
* gcc.dg/optimize-bswapdi-3.c: New test to check extension of bswap
optimization to support memory sources and bitwise operations
equivalent to load in host endianness.
* gcc.dg/optimize-bswaphi-1.c: Likewise.
* gcc.dg/optimize-bswapsi-2.c: Likewise.
* gcc.c-torture/execute/bswap-2.c: Likewise.

From-SVN: r210843

10 years agotarget-supports.exp: New effective targets for architectures capable of performing...
Thomas Preud'homme [Fri, 23 May 2014 02:47:45 +0000 (02:47 +0000)]
target-supports.exp: New effective targets for architectures capable of performing byte swap.

2014-05-23  Thomas Preud'homme  <thomas.preudhomme@arm.com>

* lib/target-supports.exp: New effective targets for architectures
  capable of performing byte swap.
* gcc.dg/optimize-bswapdi-1.c: Convert to new bswap target.
* gcc.dg/optimize-bswapdi-2.c: Likewise.
* gcc.dg/optimize-bswapsi-1.c: Likewise.

From-SVN: r210842