Age | Commit message (Collapse) | Author | Files | Lines |
|
2004-01-02 Andrew Pinski <pinskia@physics.uc.edu>
* c-typeck.c (finish_init): Free spelling_base before
setting it again.
* cfgloop.c (flow_loops_find): Always free the sbitmap
headers.
* predict.c (estimate_probability): Free bbs after being
done with it.
From-SVN: r75337
|
|
* config/mn10300/mn10300.h (PREDICATE_CODES): Add
const_8bit_operand and call_address_operand.
From-SVN: r75334
|
|
there is nothing to inline but warnings are...
* cgraphunit.c (cgraph_optimize_function): Call optimize_inline_calls
when there is nothing to inline but warnings are requested.
(cgraph_decide_inlining): Fix memory leak.
From-SVN: r75333
|
|
From-SVN: r75331
|
|
From-SVN: r75330
|
|
From-SVN: r75329
|
|
From-SVN: r75327
|
|
From-SVN: r75326
|
|
thunk2.C)
PR target/12729
* method.c (use_thunk): Pass the CALL_EXPR through force_target_expr.
From-SVN: r75325
|
|
* config/i386/cygming.h: Fix comment formatting.
* config/i386/djgpp.h: Likewise.
* config/i386/gthr-win32.c: Likewise.
* config/i386/i386-interix.h: Likewise.
* config/i386/i386.c: Likewise.
* config/i386/i386.h: Likewise.
* config/i386/openbsd.h: Likewise.
* config/i386/winnt.c: Likewise.
* config/i386/xm-mingw32.h: Likewise.
From-SVN: r75324
|
|
of nested template type)
PR c++/13520
* cp-tree.h (DECL_UNBOUND_CLASS_TEMPLATE_P): New macro.
(DECL_FUNCTION_TEMPLATE_P): Use it.
(DECL_CLASS_TEMPLATE_P): Likewise.
* parser.c (cp_parser_lookup_name): Add is_template parameter.
(cp_parser_type_parameter): Adjust call to cp_parser_lookup_name.
(cp_parser_template_name): Likewise.
(cp_parser_elaborated_type_specifier): Likewise.
(cp_parser_namespace_name): Likewise.
(cp_parser_class_name): Likewise.
(cp_parser_lookup_name_simple): Likewise.
* g++.dg/template/qualttp22.C: New test.
From-SVN: r75321
|
|
* doc/gcc.texi, doc/invoke.texi, doc/install.texi: Update
copyright and last modification dates.
From-SVN: r75319
|
|
2004-01-02 Andreas Jaeger <aj@suse.de>, Gerald Pfeifer <gp@suse.de>
* doc/install.texi (Specific): Mention x86_64.
From-SVN: r75317
|
|
From-SVN: r75313
|
|
plus_constant result.
* builtins.c (expand_builtin_apply_args_1) [STACK_GROWS_DOWNWARD]:
Call force_operand on plus_constant result.
From-SVN: r75306
|
|
* expmed.c (store_bit_field, extract_bit_field): Use new named patterns
* expr.c (store_constructor): Use vec_init pattern.
* genopinit.c (optabs): Initailize vec_set/vec_extract/vec_init.
* optabs.h (optab_index): ADD OTI_vec_set/OTI_vec_extract/OTI_vec_init
(vec_set_optab, vec_extract_optab, vec_init_optab): New.
* i386.md (vec_setv2df, vec_extractv2df, vec_setv4sf, vec_extractv4sf):
New patterns.
(sse2_unpc?pd): Fix pattern.
(sse2_movlpd): Kill.
(sse2_movsd): Deal with movlpd too.
* i386.c (ix86_expand_builtin): Use sse2_movsd instead of sse2_movlpd.
(ix86_expand_vector_init): New.
* emmintrin.h (__mm_set_pd, __mm_set_ps): Use vector extensions.
* md.texi (vec_set, vec_extract): Document
From-SVN: r75304
|
|
PR opt/13473
* recog.c (validate_replace_rtx_1): Take care for RTL sharing inside
ASM input operands
PR opt/12617
* toplev.c (dump_file_index): Reorder ce3 and bbro.
(dump_file): Likewise.
(rest_of_compilation): Likewise.
PR debug/13367
* cgraph.c (cgraph_function_possibly_inlined): Even with
flag_really_no_inline we inline always_inline functions.
* cgraphunit.c (cgraph_analyze_function): Clear inlinable flag
for non-always_inline functions when there is flag_really_no_inline.
(cgraph_decide_inlining): Limit work done when not inlining.
(cgraph_decide_inlining_incrementally): Likewise.
(cgraph_optimize_function): Check whether something got inlined.
* c-objc-common.c (c_disregard_inline_limits): Do not always inline
extern inline functions when not inlining.
* opts.c (decode_options): Disable crossjumping at -O1
* invoke.texi (-O1): Document change.
* gcc.dg/debug/20031231-1.c: New.
* gcc.c-torture/compile/20040101-1.c: New.
* gcc.dg/dwarf-die-[1-7].c: New.
From-SVN: r75303
|
|
calculate_global_regs_live)
PR optimization/13521
* gcc.c-torture/compile/20031231-1.c: New test.
From-SVN: r75301
|
|
From-SVN: r75291
|
|
From-SVN: r75290
|
|
From-SVN: r75289
|
|
From-SVN: r75286
|
|
* print-rtl.c (print_rtx): For hard register, write out register
number and register name instead of calling PRINT_REG.
* defaults.h (PRINT_REG): Deleted.
* config/i386/i386.c (print_reg): Remove handling of CODE of -1.
Move comments here from i386.h.
(print_operand, print_operand_address): Call print_reg directly.
* config/i386/i386.h (PRINT_REG): Deleted.
From-SVN: r75282
|
|
* config/ia64/hpux.h (TARGET_OS_CPP_BUILTINS): Define
_INCLUDE_LONGLONG.
From-SVN: r75279
|
|
* gcc.c (init_spec): Add -lunwind to shared case too if
USE_LIBUNWIND_EXCEPTIONS.
From-SVN: r75276
|
|
From-SVN: r75275
|
|
* doc/include/texinfo.tex: Update to version 2003-12-21.10.
* doc/gcc.texi, doc/gccint.texi: Don't set font for
@def... commands.
* doc/invoke.texi: Don't use empty @opindex.
From-SVN: r75274
|
|
that returned by expand_expr.
* c-common.c (c_expand_expr): Remove code to return a value
different from that returned by expand_expr.
* expr.c (store_expr): Use the validity of a target MEM, rather
than checking DECL_RTL (exp), to figure out if a copy is
required.
From-SVN: r75273
|
|
* config/v850/lib1funcs.asm: Fix comment formatting.
* config/v850/v850.c: Likewise.
* config/v850/v850.h: Likewise.
* config/v850/v850.md: Likewise.
From-SVN: r75270
|
|
* config/i386/i386.md (*movqi_insv_2): Remove AND in the
set source.
From-SVN: r75269
|
|
From-SVN: r75263
|
|
From-SVN: r75257
|
|
* cppfiles.c (pch_open_file): Minor tweak to work-around native
HPPA compiler bug.
From-SVN: r75256
|
|
* config/rs6000/aix.h: Fix comment formatting.
* config/rs6000/rs6000-modes.def: Likewise.
* config/rs6000/rs6000.c: Likewise.
* config/rs6000/rs6000.h: Likewise.
* config/rs6000/rs6000.md: Likewise.
From-SVN: r75252
|
|
From-SVN: r75250
|
|
From-SVN: r75248
|
|
* config/i386/i386-protos.h: Remove prototype for
const_int_1_operand.
* config/i386/i386.c (const_int_1_operand): Remove.
* config/i386/i386.h (PREDICATE_CODES): Remove
const_int_1_operand.
* config/i386/i386.md: Replace all uses of const_int_1_operand
with const1_operand.
* config/i386/pentium.md: Likewise.
From-SVN: r75247
|
|
unresolved qualified id)
PR c++/10079
* g++.dg/template/crash16.C: New test.
From-SVN: r75246
|
|
* doc/tm.texi (PREFERRED_RELOAD_CLASS): Describe use of NO_REGS
with constants.
From-SVN: r75245
|
|
* stor-layout.c (layout_decl): Turn bitfields into ordinary
fields, even if they are the first field in a structure.
From-SVN: r75242
|
|
From-SVN: r75241
|
|
* g++.old-deja/g++.jason/thunk2.C: Remove traces of dead
ports.
* g++.old-deja/g++.jason/thunk3.C: Likewise.
* g++.old-deja/g++.law/profile1.C: Likewise.
* gcc.c-torture/compile/981006-1.c: Likewise.
* gcc.c-torture/execute/loop-2e.x: Likewise.
* gcc.c-torture/execute/loop-2f.x: Remove.
* gcc.c-torture/execute/loop-2g.x: Likewise.
* gcc.c-torture/execute/strct-varg-1.x: Likewise.
* gcc.dg/20020312-2.c: Remove traces of dead ports.
From-SVN: r75240
|
|
* fold-const.c (fold) <COND_EXPR>: Don't require strict type
equality, instead just prevent replacing a COND_EXPR of non-void
type by one of its operands of void type.
From-SVN: r75239
|
|
* doc/c-tree.texi: Fix @item vs. @itemx.
* doc/cpp.texi: Likewise.
* doc/install.texi: Likewise.
* doc/invoke.texi: Likewise.
From-SVN: r75235
|
|
* builtins.c (expand_builtin_apply_args_1): Fix typo in previous
change.
From-SVN: r75234
|
|
PR ice/11936
* i386.h (CLASS_LIKELY_SPILLED_P): Return true for FP_TOP_REG/FP_SECOND_REG
From-SVN: r75231
|
|
cp:
PR c++/13507
* decl.c (duplicate_decls): Use build_type_attribute_variant to
merge attributes.
testsuite:
PR c++/13507
* g++.dg/ext/attrib11.C: New test.
From-SVN: r75229
|
|
Backport from tree-ssa (relevant changes only):
2003-12-18 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
* et-forest.h (et_forest_create, et_forest_delete,
et_forest_add_node, et_forest_add_edge, et_forest_remove_node,
et_forest_remove_edge, et_forest_parent,
et_forest_common_ancestor, et_forest_node_value,
et_forest_enumerate_sons): Declarations removed.
(struct et_node): New.
(et_new_tree, et_free_tree, et_set_father, et_split, et_nca,
et_below): Declare.
* et-forest.c (struct et_forest_occurrence, struct et_forest,
struct et_forest_node): Removed.
(et_forest_create, et_forest_delete,
et_forest_add_node, et_forest_add_edge, et_forest_remove_node,
et_forest_remove_edge, et_forest_parent,
et_forest_common_ancestor, et_forest_node_value,
et_forest_enumerate_sons, splay, remove_all_occurrences,
find_leftmost_node, find_rightmost_node, calculate_value): Removed.
(struct et_occ): New.
(et_nodes, et_occurences): New.
(set_depth, set_depth_add, set_prev, set_next, et_recomp_min,
et_check_occ_sanity, et_check_sanity, et_check_tree_sanity,
record_path_before_1, record_path_before, check_path_after_1,
check_path_after, et_splay, et_new_occ, et_new_tree,
et_free_tree, et_set_father, et_split, et_nca, et_below): New.
* basic-block.h (struct basic_block_def): New field dom.
(struct dominance_info): Type removed.
(calculate_dominance_info, free_dominance_info,
nearest_common_dominator, set_immediate_dominator,
get_immediate_dominator, dominated_by_p, get_dominated_by,
add_to_dominance_info, delete_from_dominance_info,
recount_dominator, redirect_immediate_dominators,
iterate_fix_dominators, verify_dominators): Declarations
changed.
(enum dom_state): New.
(dom_computed): New variable.
(first_dom_son, next_dom_son): Declare.
* dominance.c (struct dominance_info): Removed.
(BB_NODE, SET_BB_NODE): Removed.
(calculate_dominance_info, free_dominance_info,
nearest_common_dominator, set_immediate_dominator,
get_immediate_dominator, dominated_by_p, get_dominated_by,
add_to_dominance_info, delete_from_dominance_info,
recount_dominator, redirect_immediate_dominators,
iterate_fix_dominators, verify_dominators,
debug_dominance_info): Work over new datastructure. Access
dominance datastructures through CFG.
(assign_dfs_numbers, compute_dom_fast_query, first_dom_son,
next_dom_son): New.
* bt-load.c (dom): Variable removed.
(augment_live_range, combine_btr_defs, migrate_btr_def,
migrate_btr_defs, branch_target_load_optimize): Updated for the
new interface for dominance information.
* cfg.c {exit_entry_blocks): Update initializer.
* cfglayout.c (copy_bbs): Removed loops argument. Updated for
the new interface for dominance information.
* cfglayout.h (copy_bbs): Declaration changed.
* cfgloop.c (flow_loop_pre_header_find, flow_loops_cfg_dump,
flow_loop_scan, canonicalize_loop_headers, flow_loops_find): Updated
for the new interface for dominance information.
(flow_loop_scan): Loops argument removed.
(flow_loops_free): Don't release dominators.
* cfgloop.h (struct cfg): Dom field removed.
(flow_loop_scan, loop_split_edge_with, simple_loop_p,
just_once_each_iteration_p, split_loop_bb): Declaration changed.
* cfgloopanal.c (simple_loop_exit_p, simple_increment,
just_once_each_iteration_p, simple_loop_p): Remove loops argument.
Updated for the new interface for dominance information.
* cfgloopmanip.c (remove_bbs, find_path, create_preheader,
split_loop_bb, loopify, duplicate_loop_to_header_edge,
force_single_succ_latches, loop_split_edge_with): Ditto.
* gcse.c (dominators): Variable removed.
(free_code_hoist_mem, compute_code_hoist_data, hoist_code):
Updated for the new interface for dominance information.
* ifcvt.c (post_dominators): Variable removed.
(mark_loop_exit_edges, merge_if_block, find_if_header,
find_cond_trap, find_if_case_1, find_if_case_2, if_convert):
Updated for the new interface for dominance information.
* loop-init.c (rtl_loop_optimizer_init,
rtl_loop_optimizer_finalize): Ditto.
* loop-unroll.c (decide_peel_simple, decide_peel_once_rolling,
decide_peel_completely, decide_unroll_stupid,
decide_unroll_constant_iterations,
decide_unroll_runtime_iterations): Loops argument removed.
Updated for the new interface for dominance information.
(unroll_and_peel_loops, peel_loops_completely,
unroll_loop_runtime_iterations): Updated for the new interface for
dominance information.
* loop-unswitch.c (may_unswitch_on_p, unswitch_loops,
unswitch_single_loop, unswitch_loop): Updated for the new
interface for dominance information.
* predict.c (process_note_predictions, process_note_prediction,
estimate_probability, note_prediction_to_br_prob): Ditto.
* sched-rgn.c (find_rgns, init_regions): Ditto.
* toplev.c (rest_of_handle_branch_prob): Free the dominators.
From-SVN: r75226
|
|
cp:
PR c++/13494
* tree.c (build_cplus_array_type_1): Only build a minimal array
type for dependent types or domains.
testsuite:
PR c++/13494
* g++.dg/template/array2-1.C: New test.
* g++.dg/template/array2-2.C: New test.
From-SVN: r75225
|
|
2003-12-30 Jan Hubicka <jh@suse.cz>
PR target/13456
* i386.md (allocate_stack_worker): Use different pattern for pre and
post reload expansion.
(allocate_stack_worker_1, allocate_stack_worker_rex64): Use
match_scratch.
(allocate_stack_worder_1_postreload,
allocate_stack_worker_rex64_postreload): New.
From-SVN: r75221
|