diff options
Diffstat (limited to 'gcc/ChangeLog')
-rw-r--r-- | gcc/ChangeLog | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2e0aa6c..eb8f4db 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,28 @@ 2004-04-14 Richard Henderson <rth@redhat.com> + * 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/. + +2004-04-14 Richard Henderson <rth@redhat.com> + * config/i386/i386.c (x86_cmpxchg, x86_xadd): New. (ix86_compare_emitted): New. (ix86_expand_compare): Use ix86_compare_emitted if set. |