This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Xtensa] always flush trampolines from data cache


This patch changes the Xtensa code in libgcc used when initializing 
trampolines to always flush the data cache, even if the cache is configured 
to be write-through.  This allows the cache to be reconfigured without 
rebuilding libgcc.  Committed on mainline.


2003-04-10  Bob Wilson  <bob dot wilson at acm dot org>

	* config/xtensa/lib2funcs.S (__xtensa_sync_caches): Flush data cache
	even if it is configured to be write-through.

Index: lib2funcs.S
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/xtensa/lib2funcs.S,v
retrieving revision 1.3
diff -c -3 -r1.3 lib2funcs.S
*** lib2funcs.S	19 Apr 2002 00:31:17 -0000	1.3
--- lib2funcs.S	10 Apr 2003 16:54:03 -0000
***************
*** 159,165 ****
  	.type	__xtensa_sync_caches,@function
  __xtensa_sync_caches:
  	entry 	sp, 32
! #if XCHAL_DCACHE_SIZE > 0 && XCHAL_DCACHE_IS_WRITEBACK
  	# Flush the trampoline from the data cache
  	extui	a4, a2, 0, XCHAL_DCACHE_LINEWIDTH
  	addi	a4, a4, TRAMPOLINE_SIZE
--- 159,165 ----
  	.type	__xtensa_sync_caches,@function
  __xtensa_sync_caches:
  	entry 	sp, 32
! #if XCHAL_DCACHE_SIZE > 0
  	# Flush the trampoline from the data cache
  	extui	a4, a2, 0, XCHAL_DCACHE_LINEWIDTH
  	addi	a4, a4, TRAMPOLINE_SIZE

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]