This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r126728 - in /trunk: gcc/ChangeLog gcc/config/x...
- From: bwilson at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Wed, 18 Jul 2007 18:51:21 -0000
- Subject: r126728 - in /trunk: gcc/ChangeLog gcc/config/x...
Author: bwilson
Date: Wed Jul 18 18:51:21 2007
New Revision: 126728
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=126728
Log:
include/
* xtensa-config.h (XCHAL_HAVE_THREADPTR): New.
(XCHAL_HAVE_RELEASE_SYNC, XCHAL_HAVE_S32C1I): New.
gcc/
* config/xtensa/xtensa.c (xtensa_expand_mask_and_shift): New.
(struct alignment_context, init_alignment_context): New.
(xtensa_expand_compare_and_swap, xtensa_expand_atomic): New.
* config/xtensa/xtensa.h (XCHAL_HAVE_RELEASE_SYNC): Add default.
(XCHAL_HAVE_S32C1I): Likewise.
(TARGET_RELEASE_SYNC, TARGET_S32C1I): New.
* config/xtensa/xtensa.md (UNSPECV_MEMW): New constant.
(UNSPECV_S32RI, UNSPECV_S32C1I): Likewise.
(ATOMIC, HQI): New macros.
(memory_barrier, *memory_barrier): New.
(sync_lock_releasesi): New.
(sync_compare_and_swapsi, sync_compare_and_swap<mode>): New.
(sync_lock_test_and_set<mode>): New.
(sync_<atomic><mode>): New.
(sync_old_<atomic><mode>, sync_new_<atomic><mode>): New.
* config/xtensa/xtensa-protos.h (xtensa_expand_compare_and_swap): New.
(xtensa_expand_atomic): New.
gcc/testsuite/
* lib/target-supports.exp (check_effective_target_sync_int_long):
Enable for xtensa.
(check_effective_target_sync_char_short): Likewise.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/xtensa/xtensa-protos.h
trunk/gcc/config/xtensa/xtensa.c
trunk/gcc/config/xtensa/xtensa.h
trunk/gcc/config/xtensa/xtensa.md
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/lib/target-supports.exp
trunk/include/ChangeLog
trunk/include/xtensa-config.h