builtins.c (get_builtin_sync_mem): New function.
[gcc.git] / gcc / ChangeLog
1 2006-01-03 Adrian Straetling <straetling@de.ibm.com>
2
3 * gcc/builtins.c (get_builtin_sync_mem): New function.
4 (expand_builtin_sync_operation, expand_builtin_compare_and_swap,
5 expand_builtin_lock_test_and_set, expand_builtin_lock_release):
6 Call get_builtin_sync_mem to generate mem rtx.
7
8 2006-01-03 Richard Guenther <rguenther@suse.de>
9
10 PR c/25183
11 * stmt.c (add_case_node): Make sure to clear overflow flags
12 from ranges.
13
14 2006-01-03 Jakub Jelinek <jakub@redhat.com>
15
16 Merge from gomp-branch.
17 * config/sparc/sync.md: New file.
18 * config/sparc/sparc.md (UNSPECV_MEMBAR, UNSPECV_CAS, UNSPECV_SWAP,
19 UNSPECV_LDSTUB): New constants.
20 * config/sparc/sparc.c (sparc_expand_compare_and_swap_12): New function.
21 * config/sparc/predicates.md (memory_reg_operand): New predicate.
22 * config/sparc/sparc-protos.h (sparc_expand_compare_and_swap_12): New
23 prototype.
24
25 2006-01-03 Roger Sayle <roger@eyesopen.com>
26
27 * combine.c (reg_subword_p): New predicate to test whether the
28 destination of a set refers to a subword/piece of a register.
29 (try_combine): Generalize the code to merge the setting of a
30 pseudo to a constant followed by a set of a subword of that
31 register to a constant.
32
33 2006-01-03 Kazu Hirata <kazu@codesourcery.com>
34
35 * basic-block.h (control_flow_graph): Change the type of
36 x_label_to_block_map to VEC(basic_block,gc) *.
37 * tree-cfg.c (init_empty_tree_cfg, label_to_block_fn,
38 set_bb_for_stmt): Adjust the uses of x_label_to_block_map.
39
40 * tree-ssa-propagate.c (cfg_blocks): Change the type to
41 VEC(basic_block,heap) *.
42 (cfg_blocks_add, cfg_blocks_get, ssa_prop_init,
43 ssa_prop_fini): Adjust the uses of cfg_blocks.
44
45 2006-01-03 Steven Bosscher <stevenb.gcc@gmail.com>
46
47 * fold-const.c (operand_equal_p): Accept a NULL operand 0 for
48 COMPONENT_REFs.
49 * emit-rtl.c (mem_attrs_htab_eq): Use iterative_hash_expr for
50 hashing trees instead of a pointer hash.
51 (mem_attrs_htab_eq): Do a deep compare instead of a pointer
52 compare for MEM_EXPR.
53
54 PR rtl-optimization/25130
55 * cse.c (exp_equiv_p): Compare MEM_ATTRS instead of MEM_ALIAS_SET
56 when comparing MEMs for GCSE
57
58 2006-01-03 Ben Elliston <bje@au.ibm.com>
59
60 * targhooks.h (default_decimal_float_supported_p): Declare.
61 * targhooks.c (default_decimal_float_supported_p): Define.
62 * target-def.h (TARGET_DECIMAL_FLOAT_SUPPORTED_P): Redefine to
63 `default_decimal_float_supported_p'.
64 * doc/tm.texi (TARGET_DECIMAL_FLOAT_SUPPORTED_P): Update.
65
66 2006-01-02 Adam Nemet <anemet@caviumnetworks.com>
67
68 * combine.c (apply_distributive_law <SUBREG>): Check
69 TRULY_NOOP_TRUNCATION.
70
71 2006-01-02 Geoffrey Keating <geoffk@apple.com>
72
73 * dwarf2out.c (have_switched_text_section): Delete.
74 (have_multiple_function_sections): New.
75 (have_location_lists): Make 'bool'.
76 (add_AT_loc_list): Use 'true' not '1'.
77 (dwarf2out_switch_text_section): Set have_multiple_function_sections.
78 (output_loc_list): Use have_multiple_function_sections.
79 (output_ranges): Likewise.
80 (dwarf2out_begin_function): Set have_multiple_function_sections if
81 necessary.
82 (dwarf2out_source_line): Don't fake separate_line_info_table_in_use.
83 Check function_section rather than DECL_SECTION_NAME.
84 (dwarf2out_finish): Use have_multiple_function_sections.
85 Don't clear have_location_lists.
86
87 2006-01-02 Eric Botcazou <ebotcazou@adacore.com>
88 Jan Hubicka <jh@suse.cz>
89
90 * cfglayout.c (fixup_reorder_chain): Remove kludge for the
91 case of conditional jump jumping to the next instruction.
92 * cfgrtl.c (force_nonfallthru_and_redirect): Accept all
93 cases of conditional jump jumping to the next instruction.
94
95 2006-01-02 Jan Hubicka <jh@suse.cz>
96
97 * i386.c (*_cost): Add COSTS_N_INSNS.
98 (ix86_rtx_costs): Do not use COSTS_N_INSNS.
99
100 2006-01-02 Paolo Bonzini <bonzini@gnu.org>
101
102 PR target/25259
103 * Makefile.in (DECNUMINC): Include libdecnumber's build directory.
104
105 2006-01-02 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
106
107 * config/arm/arm.c (all_fpus): Fix comment typo.
108 * config/darwin.c: Likewise.
109 * config/frv/frv.h (FRV_STRUCT_VALUE_REGNUM): Likewise.
110 * config/h8300/h8300.md (extendqisi2_h8300hs): Likewise.
111 * config/m68hc11/m68hc11.c (m68hc11_reload_operands): Likewise.
112
113 2006-01-01 David Edelsohn <edelsohn@gnu.org>
114
115 * config/rs6000/rs6000.c (rs6000_expand_compare_and_swapqhi): New.
116 (rs6000_split_compare_and_swapqhi): New.
117 * config/rs6000/sync.md (sync_compare_and_swap{hi,qi}): New.
118 (sync_compare_and_swapqhi_internal): New.
119 * config/rs6000/rs6000-protos.h: Declare.
120