Age | Commit message (Collapse) | Author | Files | Lines |
|
* tree-ssa-alias.c (init_alias_info): Remove a call to
get_stmt_operands.
From-SVN: r98195
|
|
* basic-block.h (PROP_EQUAL_NOTES): Remove.
* flow.c (propagate_one_insn): Don't use PROP_EQUAL_NOTES.
From-SVN: r98193
|
|
non-virtual PHI nodes like we use to.
2005-04-15 Andrew MacLeod <amacleod@redhat.com>
* tree-vect-analyze.c (vect_stmt_relevant_p): Process immediate uses
of non-virtual PHI nodes like we use to.
From-SVN: r98192
|
|
2005-05-15 Paolo Bonzini <bonzini@gnu.org>
* genattrtab.c (ATTR_EQ_ATTR_P): Remove.
(attr_copy_rtx): Do not use it.
From-SVN: r98191
|
|
2005-04-15 Andrew Macleod <amacleod@redhat.com>
* doc/tree-ssa.texi: Grammer/abbreviation updates.
From-SVN: r98190
|
|
vectorized store needing renaming.
* tree-vect-transform.c (vectorizable_store): Mark necessary
objects in the vectorized store needing renaming. Update the
SSA graph for V_MAY_DEF operands in the original store.
From-SVN: r98189
|
|
value number the resulting expressions.
2005-04-14 Daniel Berlin <dberlin@dberlin.org>
* tree-ssa-pre.c (compute_avail): It's okay to have
TREE_INVARIANT's here, and value number the resulting expressions.
(create_expression_by_pieces): Make sure operands that were
min_invariant when we started, stay that way.
From-SVN: r98187
|
|
From-SVN: r98186
|
|
* cp-tree.h (lang_type_class): Remove redefined. Move
java_interface into where redefined was. Increment the width
of dummy.
(TYPE_REDEFINED): Remove.
From-SVN: r98184
|
|
view_convert_expr with 1 operands)
PR tree-optimization/20936.
* tree-ssa-ccp.c (visit_assignment): Fix a typo.
From-SVN: r98183
|
|
* doc/invoke.texi: Fix typos.
* doc/md.texi: Likewise.
* doc/rtl.texi: Likewise.
* doc/sourcebuild.texi: Likewise.
* doc/tm.texi: Likewise.
From-SVN: r98179
|
|
PR tree-optimization/21004
* convert.c (convert_to_integer): Convert ceilf, ceill, floorf
and floorl in c99 mode only.
* builtins.c (expand_builtin_int_roundingfn): Assert that
fallback_fndecl is not NULL_TREE.
testsuite:
PR tree-optimization/21004
* gcc.dg/builtins-53.c: Include builtins-config.h.
Check floorf, ceilf, floorl and ceill transformations
only when HAVE_C99_RUNTIME is defined.
From-SVN: r98174
|
|
* cfgrtl.c (purge_all_dead_edge): Remove an unused argument.
* basic-block.h: Update the prototype for
purge_all_dead_edges.
* cfgexpand.c (tree_expand_cfg): Update a call to
purge_all_dead_edges.
* combine.c (combine_instructions): Likewise.
* passes.c (rest_of_handle_old_regalloc, rest_of_handle_cse,
rest_of_handle_cse2, rest_of_handle_gcse,
rest_of_handle_postreload): likewise.
From-SVN: r98168
|
|
gcc/ChangeLog:
PR middle-end/20739
* gimplify.c (gimplify_addr_expr): Compensate for removal of
e.g. cv-qualification conversions.
gcc/testsuite/ChangeLog:
PR middle-end/20739
* gcc.dg/tree-ssa/pr20739.c: New test.
From-SVN: r98167
|
|
framework in the first instance of it found in...
* config/darwin-c.c (framework_construct_pathname): We must
find all headers of a framework in the first instance of it
found in the seach path.
* gcc.dg/Foundation.framework/empty: New.
* gcc.dg/framework-2.c: New.
From-SVN: r98162
|
|
gcc/
PR tree-optimization/21021
* tree-vrp.c (compare_values): Work around a bug in the front
end that produces a comparison of mismatched types.
testsuite/
PR tree-optimization/21021
* gcc.c-torture/compile/pr21021.c: New.
From-SVN: r98161
|
|
[[Split portion of a mixed commit.]]
From-SVN: r98159.2
|
|
* config/ia64/ia64.h (enum fetchop_code): Remove.
(enum ia64_builtins): Move ...
* config/ia64/ia64.c (enum ia64_builtins): ... here. Remove all
members except BSP and FLUSHRS.
(ia64_init_builtins): Remove __sync builtins.
(ia64_expand_builtin): Likewise.
(ia64_expand_fetch_and_op, ia64_expand_op_and_fetch): Remove.
(ia64_expand_compare_and_swap, ia64_expand_lock_test_and_set): Remove.
(ia64_expand_lock_release): Remove.
* config/ia64/ia64.md (mf): Move to sync.md.
(mf_internal, fetchadd_acq_si, fetchadd_acq_di, cmpxchg_acq_si,
cmpxchg_acq_di, xchgsi, xchgdi): Likewise.
* config/ia64/sync.md: New file.
(memory_barrier): Rename from mf.
(fetchadd_acq_<I48MODE>): Macroize from _si/_di patterns.
(cmpxchg_acq_<I48MODE>): Likewise.
(sync_lock_test_and_set<I48MODE>): Likewise.
* config/ia64/ia64intrin.h: Define nothing for C; limit #defines
to c++. Remove __sync* declarations. s/_si/_4/. s/_di/_8/.
From-SVN: r98156
|
|
* config/i386/i386.c (x86_cmpxchg, x86_xadd): New.
(ix86_compare_emitted): New.
(ix86_expand_compare): Use ix86_compare_emitted if set.
(ix86_expand_setcc): Only emit REG_EQUAL if both ix86_compare_op0
and ix86_compare_op0 are set.
* config/i386/i386.h (x86_cmpxchg, x86_xadd): Declare.
(TARGET_CMPXCHG, TARGET_XADD): New.
(ix86_compare_emitted): Declare.
* config/i386/i386.md: Include sync.md
(UNSPECV_CMPXCHG_1, UNSPECV_CMPXCHG_2): New.
(UNSPECV_XCHG, UNSPECV_LOCK): New.
* config/i386/sync.md: New file.
From-SVN: r98155
|
|
PR middle-end/14311
* builtin-types.def (BT_BOOL, BT_VOLATILE_PTR, BT_I1, BT_I2,
BT_I4, BT_I8, BT_FN_VOID_VPTR, BT_FN_I1_VPTR_I1, BT_FN_I2_VPTR_I2,
BT_FN_I4_VPTR_I4, BT_FN_I8_VPTR_I8, BT_FN_BOOL_VPTR_I1_I1,
BT_FN_BOOL_VPTR_I2_I2, BT_FN_BOOL_VPTR_I4_I4, BT_FN_BOOL_VPTR_I8_I8,
BT_FN_I1_VPTR_I1_I1, BT_FN_I2_VPTR_I2_I2, BT_FN_I4_VPTR_I4_I4,
BT_FN_I8_VPTR_I8_I8): New.
* builtins.def (DEF_SYNC_BUILTIN): New.
(BUILT_IN_FETCH_AND_ADD_N, BUILT_IN_FETCH_AND_ADD_1,
BUILT_IN_FETCH_AND_ADD_2, BUILT_IN_FETCH_AND_ADD_4,
BUILT_IN_FETCH_AND_ADD_8, BUILT_IN_FETCH_AND_SUB_N,
BUILT_IN_FETCH_AND_SUB_1, BUILT_IN_FETCH_AND_SUB_2,
BUILT_IN_FETCH_AND_SUB_4, BUILT_IN_FETCH_AND_SUB_8,
BUILT_IN_FETCH_AND_OR_N, BUILT_IN_FETCH_AND_OR_1,
BUILT_IN_FETCH_AND_OR_2, BUILT_IN_FETCH_AND_OR_4,
BUILT_IN_FETCH_AND_OR_8, BUILT_IN_FETCH_AND_AND_N,
BUILT_IN_FETCH_AND_AND_1, BUILT_IN_FETCH_AND_AND_2,
BUILT_IN_FETCH_AND_AND_4, BUILT_IN_FETCH_AND_AND_8,
BUILT_IN_FETCH_AND_XOR_N, BUILT_IN_FETCH_AND_XOR_1,
BUILT_IN_FETCH_AND_XOR_2, BUILT_IN_FETCH_AND_XOR_4,
BUILT_IN_FETCH_AND_XOR_8, BUILT_IN_FETCH_AND_NAND_N,
BUILT_IN_FETCH_AND_NAND_1, BUILT_IN_FETCH_AND_NAND_2,
BUILT_IN_FETCH_AND_NAND_4, BUILT_IN_FETCH_AND_NAND_8,
BUILT_IN_ADD_AND_FETCH_N, BUILT_IN_ADD_AND_FETCH_1,
BUILT_IN_ADD_AND_FETCH_2, BUILT_IN_ADD_AND_FETCH_4,
BUILT_IN_ADD_AND_FETCH_8, BUILT_IN_SUB_AND_FETCH_N,
BUILT_IN_SUB_AND_FETCH_1, BUILT_IN_SUB_AND_FETCH_2,
BUILT_IN_SUB_AND_FETCH_4, BUILT_IN_SUB_AND_FETCH_8,
BUILT_IN_OR_AND_FETCH_N, BUILT_IN_OR_AND_FETCH_1,
BUILT_IN_OR_AND_FETCH_2, BUILT_IN_OR_AND_FETCH_4,
BUILT_IN_OR_AND_FETCH_8, BUILT_IN_AND_AND_FETCH_N,
BUILT_IN_AND_AND_FETCH_1, BUILT_IN_AND_AND_FETCH_2,
BUILT_IN_AND_AND_FETCH_4, BUILT_IN_AND_AND_FETCH_8,
BUILT_IN_XOR_AND_FETCH_N, BUILT_IN_XOR_AND_FETCH_1,
BUILT_IN_XOR_AND_FETCH_2, BUILT_IN_XOR_AND_FETCH_4,
BUILT_IN_XOR_AND_FETCH_8, BUILT_IN_NAND_AND_FETCH_N,
BUILT_IN_NAND_AND_FETCH_1, BUILT_IN_NAND_AND_FETCH_2,
BUILT_IN_NAND_AND_FETCH_4, BUILT_IN_NAND_AND_FETCH_8,
BUILT_IN_BOOL_COMPARE_AND_SWAP_N, BUILT_IN_BOOL_COMPARE_AND_SWAP_1,
BUILT_IN_BOOL_COMPARE_AND_SWAP_2, BUILT_IN_BOOL_COMPARE_AND_SWAP_4,
BUILT_IN_BOOL_COMPARE_AND_SWAP_8, BUILT_IN_VAL_COMPARE_AND_SWAP_N,
BUILT_IN_VAL_COMPARE_AND_SWAP_1, BUILT_IN_VAL_COMPARE_AND_SWAP_2,
BUILT_IN_VAL_COMPARE_AND_SWAP_4, BUILT_IN_VAL_COMPARE_AND_SWAP_8,
BUILT_IN_LOCK_TEST_AND_SET_N, BUILT_IN_LOCK_TEST_AND_SET_1,
BUILT_IN_LOCK_TEST_AND_SET_2, BUILT_IN_LOCK_TEST_AND_SET_4,
BUILT_IN_LOCK_TEST_AND_SET_8, BUILT_IN_LOCK_RELEASE_N,
BUILT_IN_LOCK_RELEASE_1, BUILT_IN_LOCK_RELEASE_2,
BUILT_IN_LOCK_RELEASE_4, BUILT_IN_LOCK_RELEASE_8,
BUILT_IN_SYNCHRONIZE: New.
* builtins.c (called_as_built_in): Rewrite from CALLED_AS_BUILT_IN
as a function. Accept __sync_ as a prefix as well.
(expand_builtin_sync_operation, expand_builtin_compare_and_swap,
expand_builtin_lock_test_and_set, expand_builtin_synchronize,
expand_builtin_lock_release): New.
(expand_builtin): Call them.
* c-common.c (DEF_BUILTIN): Don't require __builtin_ prefix if
neither BOTH_P nor FALLBACK_P are defined.
(builtin_type_for_size): New.
(sync_resolve_size, sync_resolve_params, sync_resolve_return): New.
(resolve_overloaded_builtin): New.
* c-common.h (resolve_overloaded_builtin): Declare.
(builtin_type_for_size): Declare.
* c-typeck.c (build_function_call): Invoke resolve_overloaded_builtin.
* expr.c (sync_add_optab, sync_sub_optab, sync_ior_optab,
sync_and_optab, sync_xor_optab, sync_nand_optab, sync_old_add_optab,
sync_old_sub_optab, sync_old_ior_optab, sync_old_and_optab,
sync_old_xor_optab, sync_old_nand_optab, sync_new_add_optab,
sync_new_sub_optab, sync_new_ior_optab, sync_new_and_optab,
sync_new_xor_optab, sync_new_nand_optab, sync_compare_and_swap,
sync_compare_and_swap_cc, sync_lock_test_and_set,
sync_lock_release): New.
* optabs.h: Declare them.
* expr.h (expand_val_compare_and_swap, expand_bool_compare_and_swap,
expand_sync_operation, expand_sync_fetch_operation,
expand_sync_lock_test_and_set): Declare.
* genopinit.c (optabs): Add sync optabs.
* optabs.c (init_optabs): Initialize sync optabs.
(expand_val_compare_and_swap_1, expand_val_compare_and_swap,
expand_bool_compare_and_swap, expand_compare_and_swap_loop,
expand_sync_operation, expand_sync_fetch_operation,
expand_sync_lock_test_and_set): New.
* doc/extend.texi (Atomic Builtins): New section
* doc/md.texi (Standard Names): Add sync patterns.
From-SVN: r98154
|
|
goto_queue entries as if...
* tree-eh.c (lower_try_finally_copy): Generate new code in
response to goto_queue entries as if the queue was sorted by
index, not pointers.
(lower_try_finally_switch): Likewise.
From-SVN: r98149
|
|
PR testsuite/21010
* gcc.dg/vect/vect-ifcvt-1.c: Remove dg-do, add cleanup.
* gcc.dg/vect/vect-ifcvt-2.c: Ditto.
* gcc.dg/vect/vect-ifcvt-3.c: Ditto.
* gcc.dg/vect/vect-ifcvt-4.c: Ditto.
* gcc.dg/vect/vect-ifcvt-5.c: Ditto.
* gcc.dg/vect/vect-ifcvt-6.c: Ditto.
* gcc.dg/vect/vect-ifcvt-7.c: Ditto.
* gcc.dg/vect/vect-ifcvt-9.c: Ditto.
From-SVN: r98148
|
|
* config/i386/i386.c (ix86_expand_sse_cmp): Split out from ...
(ix86_expand_sse_movcc): ... here. Take cmp as a pre-computed
register.
(ix86_expand_fp_movcc): Update to match.
(ix86_expand_fp_vcond, ix86_expand_int_vcond): New.
* config/i386/i386-protos.h: Update.
* config/i386/sse.md (vcondv4sf, vcondv2df): New.
(vcond<SSEMODE124>, vcondu<SSEMODE12>): New.
* lib/target-supports.exp (check_effective_target_vect_condition):
Add ia64, i?86, and x86_64.
From-SVN: r98146
|
|
* doc/cpp.texi, doc/install.texi: Change references to GCC 3.5 to
refer to 4.0.
From-SVN: r98144
|
|
From-SVN: r98143
|
|
From-SVN: r98142
|
|
* gfortran.h (gfc_real_info): Add subnormal struct member.
* arith.c (gfc_arith_init_1): Set it.
(gfc_check_real_range): Use it.
* simplify.c (gfc_simplify_nearest): Fix nearest(0.,1.).
From-SVN: r98141
|
|
2005-04-14 Andreas Krebbel <krebbel1@de.ibm.com>
* config.gcc: Set cpu_type for s390.
From-SVN: r98140
|
|
Sorry about that
From-SVN: r98137
|
|
addr_expr in value_exists_in_set_bitmap, at tree-ssa-pre.c:437)
2005-04-14 Daniel Berlin <dberlin@dberlin.org>
Fix PR tree-optimization/20963
* tree-ssa-pre.c (compute_avail): Remove special case for
TREE_INVARIANT.
(create_expression_by_pieces): Add value numbers for forced out
statements.
From-SVN: r98136
|
|
* config/cris/cris.md: Replace references to (reg:SI 16) with
(reg:SI CRIS_SRP_REGNUM).
From-SVN: r98135
|
|
"if" statement.)
gcc/
PR tree-optimization/20657
* tree-vrp.c (extract_range_from_expr): Notice INTEGER_CST to
create an appropriate range from it.
testsuite/
PR tree-optimization/20657
* gcc.dg/tree-ssa/pr20657.c: New.
From-SVN: r98134
|
|
* cp-tree.h (SET_TMPL_ARG, ENUM_TI_TEMPLATE, ENUM_TI_ARGS,
CLASSTYPE_TEMPLATE_LEVEL): Remove.
From-SVN: r98133
|
|
<UNSPEC_FIST_CEIL> case.
* reg-stack.c (subst_stack_regs_pat): Handle <UNSPEC_FIST_FLOOR> and
<UNSPEC_FIST_CEIL> case.
* config/i386/i386.md (UNSPEC_FIST_FLOOR, UNSPEC_FIST_CEIL): New.
(*fist<mode>2_floor_1, fistdi2_floor, fistdi2_floor_with_temp)
(fist<mode>2_floor, fist<mode>2_floor_with_temp): New isns patterns
to implement lfloor and llfloor built-ins as x87 intrinsic function.
(fistdi2_floor, fist<mode>2_floor splitters): New splitters.
(lfloor<mode>2): New expanders.
(*fist<mode>2_ceil_1, fistdi2_ceil, fistdi2_ceil_with_temp)
(fist<mode>2_ceil, fist<mode>2_ceil_with_temp): New isns patterns
to implement lceil and llceil built-ins as x87 intrinsic function.
(fistdi2_ceil, fist<mode>2_ceil splitters): New splitters.
(lceil<mode>2): New expanders.
From-SVN: r98132
|
|
long int)ceil{,f,l} into FIX_TRUNC_EXPR.
* convert.c (convert_to_integer): Convert (long int)trunc{,f,l},
and (long long int)ceil{,f,l} into FIX_TRUNC_EXPR.
testsuite:
* gcc.dg/builtins-53.c: Also check (int)trunc* and
(long long int)trunc*.
From-SVN: r98131
|
|
ChangeLog:
PR target/20927
* config/s390/s390-modes.def: Define TFmode.
testsuite/ChangeLog:
PR target/20927
* gcc.dg/pr20927.c: New test.
From-SVN: r98128
|
|
* ChangeLog: Added comment on gfc_match_if for the
2005-04-09 entry on match.c.
From-SVN: r98127
|
|
[[Split portion of a mixed commit.]]
From-SVN: r98118.2
|
|
* config/mips/mips.h (ASM_OUTPUT_CASE_LABEL): Delete.
(JUMP_TABLES_IN_TEXT_SECTION): Define.
* config/mips/mips.c (mips16_insn_length): Remove reference to
JUMP_TABLES_IN_TEXT_SECTION.
From-SVN: r98111
|
|
* gcc.dg/torture/pr19683-1.c: Guard with #ifndef __mips16.
* gcc.target/mips/asm-1.c: Likewise.
From-SVN: r98110
|
|
OKed by Roger Sayle.
From-SVN: r98107
|
|
2005-04-13 Dale Johannesen <dalej@apple.com>
* objc.dg/objc-fast-4.m: New.
From-SVN: r98106
|
|
2005-04-13 Dale Johannesen <dalej@apple.com>
* objc/Make-lang.in (objc-lang.o): Depend on tree-gimple.h.
(objc-act.o): Ditto.
* objc/objc-act.c (objc_gimplify_expr): New.
(objc_get_callee_fndecl): New.
* objc/objc-act.h: Include tree-gimple.h. Declare new functions.
* objc/objc-lang.c (LANG_HOOKS_GIMPLIFY_EXPR): Define.
(LANG_HOOKS_GET_CALLEE_FNDECL): Define.
From-SVN: r98105
|
|
* tree-if-conv.c (tree_if_convert_cond_expr): Do not create extra
temp variables.
From-SVN: r98104
|
|
* config/cris/cris-protos.h (cris_emit_movem_store)
(cris_expand_prologue): Prototype.
* config/cris/cris.c (struct machine_function): New member
stdarg_regs.
(cfa_label_num, cris_target_asm_function_prologue): Remove.
(TARGET_ASM_FUNCTION_PROLOGUE): Don't override.
(cris_general_operand_or_gotless_symbol): Accept CRIS_UNSPEC_GOT.
(cris_load_multiple_op, cris_return_address_on_stack)
(cris_return_address_on_stack_for_return): ISO-Cify.
(cris_store_multiple_op): New predicate function.
(cris_expand_prologue, cris_emit_movem_store): New functions.
(cris_print_operand) <case 'O'>: Handle modifications other than
post-increment.
(cris_symbol, cris_got_symbol): Return 0 for CRIS_UNSPEC_GOT.
(cris_gotless_symbol): Return 1 for CRIS_UNSPEC_GOT.
(cris_gen_movem_load): Rearrange slightly to make local variable
src a parameter, removing osrc.
(cris_setup_incoming_varargs): Set machine_function member
stdarg_regs to correspond to the number of registers that need to
be saved.
* config/cris/cris.h (EXTRA_CONSTRAINT_S): Accept
CRIS_UNSPEC_GOT.
(PREDICATE_CODES): Add cris_store_multiple_op. Make
cris_general_operand_or_gotless_symbol accept UNSPEC.
* config/cris/cris.md (CRIS_UNSPEC_GOT): New constant.
("*movsi_internal") <alternative 8>: Handle CRIS_UNSPEC_GOT.
("*cris_store_multiple"): New pattern. Tweak common comment above
this and "*cris_load_multiple".
("prologue"): New define_expand.
From-SVN: r98103
|
|
* config/cris/cris.md ("epilogue"): Conditionalize on
TARGET_PROLOGUE_EPILOGUE.
From-SVN: r98102
|
|
* gcc.target/cris/torture/cris-torture.exp: New driver in new
directory.
* gcc.target/cris/torture/no-pro-epi-1.c: New test.
From-SVN: r98101
|
|
PR target/20924
* config/ia64/ia64.md (divsf3_internal_lat): Generate frcpa with
fpsr 0 instead of fpsr 1.
(divsf3_internal_thr): Ditto.
(divdf3_internal_lat): Ditto.
(divdf3_internal_thr): Ditto.
(divxf3_internal_lat): Ditto.
(divxf3_internal_thr): Ditto.
From-SVN: r98095
|
|
* basic-block.h, tree-ssa-uncprop.c, varasm.c,
config/i386/sse.md: Fix comment typos.
From-SVN: r98094
|
|
* gcc.dg/ppc-vector-memcpy.c: XFAIL on AIX and SPE.
* gcc.dg/ppc-vector-memset.c: XFAIL on AIX and SPE.
From-SVN: r98093
|