* cgraph.h (struct varpool_node_set_def,
struct cgraph_node_set_def): Remove unused AUX pointer.
(cgraph_node_set_nonempty_p, varpool_node_set_nonempty_p): Use
VEC_empty macro.
* lto.c (bitmap vector): Remove.
(lto_cgraph_node_sets, lto_varpool_node_sets): Remove.
(ltrans_partition_def): New structure.
(ltrans_partition): New type and VECtor.
(new_partition): New function.
(add_cgraph_node_to_partition): New function.
(lto_1_to_1_map): Reorganize for partitions.
(lto_add_inline_clones): Remove.
(lto_add_all_inlinees): Remove.
(lto_promote_cross_file_statics): Use partitions.
(cmp_partitions): New function.
(lto_wpa_write_files): Do not call lto_add_all_inlinees;
use partitions; output files sorted by size.
From-SVN: r160034
2010-05-29 Richard Guenther <rguenther@suse.de>
* lto-streamer.c (cached_bp): New global variable.
(bitpack_create): Return the cached bitpack, if available.
(bitpack_delete): Clear and cache the bitpack, if appropriate.
(bp_pack_value): Remove redundant asserts.
From-SVN: r160032
2010-05-29 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/44306
* gcc.dg/tree-ssa/pr44306.c: New.
* tree-if-conv.c (is_true_predicate): New.
(is_predicated): Use is_true_predicate.
(add_to_predicate_list): Same. Do not use unshare_expr.
(add_to_dst_predicate_list): Same.
From-SVN: r160031
2010-05-29 Sebastian Pop <sebastian.pop@amd.com>
* tree-if-conv.c (add_to_dst_predicate_list): Do not use the ->aux
field on edges.
(predicate_bbs): Same.
(clean_predicate_lists): Same.
(find_phi_replacement_condition): Do not AND the predicate from
edge->aux.
From-SVN: r160030
* basic-block.h (struct control_flow_graph): Move last_label_uid field up.
* df.h (struct df_base_ref): Move regno field up.
* dwarf2out.c (struct dw_fde_struct): Move funcdef_number field down.
* expr.h (struct separate_ops): Move location field up.
* optabs.h (struct optab_d): Move libcall_basename field down.
* config/i386/i386.c (struct ix86_frame): Move red_zone_size up.
* config/i386/i386.h (struct machine_function): Convert call_abi field
into a bitfield. Move cfa field to the end of the structure.
From-SVN: r160025
* config/spu/spu-protos.h: Do not include rtl.h. Protect
RTL specific prototypes with #ifdef RTX_CODE.
* config/spu/spu-c.c: Include c-common.h instead of c-tree.h.
* config/spu/t-spu-elf: Fix dependencies.
From-SVN: r160022
* cgraph.c (clone_function_name): Take SUFFIX argument; export.
(cgraph_create_virtual_clone): Take SUFFIX argument; udpate
use of clone_function_name.
* cgraph.h (cgraph_create_virtual_clone,
cgraph_function_versioning): update prototypes.
(clone_function_name): Declare.
* ipa-cp.c (ipcp_insert_stage): Update call of
cgraph_create_virtual_clone.
* omp-low.c (create_omp_child_function_name): Use
cgraph_create_virtual_clone.
* cgraphunit.c (cgraph_copy_node_for_versioning): Fix edges updating.
(cgraph_function_versioning): Take SUFFIX argument; produce new name
and make decl local.
* gcc.dg/tree-ssa/ipa-cp-1.c: Update testcase.
From-SVN: r160016
gcc/ChangeLog:
* c-common.h (GCC_DIAG_STYLE): Define earlier in the file,
before including diagnostic-core.h.
(c_cpp_error): New prototype moved from c-tree.h.
Use ATTRIBUTE_GCC_DIAG instead of ATTRIBUTE_GCC_CDIAG.
* c-tree.h (ATTRIBUTE_GCC_CDIAG): Remove define.
(pedwarn_c90, perwarn_c99): Use ATTRIBUTE_GCC_DIAG instead.
(c_cpp_error): Prototype moved to c-common.h.
* Makefile.in: Update dependency for C_COMMON_H.
cp/ChangeLog:
* cp-tree.h (ATTRIBUTE_GCC_CXXDIAG): Remove. Require that
this file is included before c-common.h. Define GCC_DIAG_STYLE
before including diagnostic-core.h and toplev.h.
(pedwarn_cxx98): Use ATTRIBUTE_GCC_DIAG.
* pt.c: Include cp-tree.h before c-common.h.
From-SVN: r160007
* gcc.c: Include diagnostic.h.
(error_count): Remove. All users changed to use errorcount.
(programname): Remove. All users changed to use progname.
(fancy_abort, internal_error, fatal_error, error, warning, inform,
fnotice): Remove.
(execute): Don't include "Internal error" and bug reporting
information in argument of internal_error call.
(process_command): Don't increment error_count after calling
perror_with_name.
(input_filename): Rename to gcc_input_filename. All users
changed.
(main): Call diagnostic_initialize. Register delete_temp_files
with atexit. Use seen_error to test for errors.
* gcc.h: Include diagnostic-core.h.
(fatal_error, error, warning): Remove.
* Makefile.in (GCC_H): Add $(DIAGNOSTIC_CORE_H).
(GCC_OBJS): Add diagnostic.o, pretty-print.o and input.o.
(gcc.o): Update dependencies.
From-SVN: r160004
2010-05-28 Sebastian Pop <sebastian.pop@amd.com>
* tree-scalar-evolution.c (set_nb_iterations_in_loop): Inlined in the
only place it was called from.
(number_of_latch_executions): Do not return chrec_dont_know when the
may_be_zero is a runtime condition: instead, return a COND_EXPR
including the may_be_zero condition.
* cfgloop.h (struct loop): Add a note on COND_EXPRs to the comment
of nb_iterations.
* tree-ssa-loop-ivopts.c (contains_abnormal_ssa_name_p): Handle
COND_EXPRs.
* gcc.dg/vect/vect-outer-fir-lb.c: Un-XFAIL-ed.
From-SVN: r159992
2010-05-28 Sebastian Pop <sebastian.pop@amd.com>
* tree-if-conv.c (replace_phi_with_cond_gimple_assign_stmt): Don't
generate COND_EXPRs for degenerate_phi_result.
From-SVN: r159991
2010-05-28 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/44293
* tree-if-conv.c (if_convertible_loop_p): Check the
if-convertibility of phi nodes in non predicated BBs.
From-SVN: r159990
PR driver/15303
* gcc.c (inform, warning, inform): New functions.
(fatal_ice): Rename to internal_error; change cmsgid parameter to
gmsgid. All callers changed.
(notice): Rename to fnotice; add parameter fp. All callers
changed.
(fatal_error): Rename to fatal_signal. All users changed.
(fatal): Rename to fatal_error; change cmsgid parameter to
gmsgid. All callers changed.
(process_command): Use warning instead of error for warnings.
(end_going_arg): Don't use _() around argument of error.
(do_spec_1): Use inform for message from %n specs. Use warning
instead of error for warnings.
(main): Use inform for comparison messages. Use warning for
message about unused linker input.
(error): Increment error_count. Print "error: ".
* gcc.h (fatal): Change to fatal_error.
(warning): Declare.
* config/darwin-driver.c (darwin_default_min_version): Use warning
instead of fprintf for warnings.
* cppspec.c (lang_specific_driver): Use fatal_error instead of
fatal.
cp:
* g++spec.c (lang_specific_driver): Use fatal_error instead of
fatal.
fortran:
* gfortranspec.c (append_arg, lang_specific_driver): Use
fatal_error instead of fatal. Use warning instead of fprintf for
warnings.
java:
* jvspec.c (lang_specific_driver): Use fatal_error instead of
fatal. Use warning instead of error for warnings.
From-SVN: r159986
PR debug/41048
* dwarf2out.c (double_int_type_size_in_bits): New function.
(round_up_to_align): Change first argument and return value to
double_int.
(field_byte_offset): Work internally on double_ints.
From-SVN: r159975
* java-tree.h (method_entry): Declare. Declare VECs containing it.
(struct lang_type): Change type of otable_methods, atable_methods, and
itable_methods to VECs. Fix comment for atable_methods.
(emit_symbol_table): Take a VEC instead of a tree.
(get_symbol_table_index): Take a VEC * instead of a tree *.
* class.c (add_table_and_syms): Take a VEC instead of a tree.
(emit_symbol_table): Update for changed parameter type.
* expr.c (get_symbol_table_index): Likewise.
From-SVN: r159974
PR target/43636
* builtins.c (expand_movstr): Use a temporary pseudo instead
of target even when target is not NULL and not const0_rtx, but
fails movstr predicate.
* config/m32c/blkmov.md (movstr): Add predicate to first operand.
* gcc.c-torture/compile/pr43636.c: New test.
From-SVN: r159972