This is the mail archive of the gdb-cvs@sourceware.org mailing list for the GDB 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]

src/gdb ChangeLog dcache.c


CVSROOT:	/cvs/src
Module name:	src
Changes by:	palves@sourceware.org	2013-03-26 19:16:05

Modified files:
	gdb            : ChangeLog dcache.c 

Log message:
	Make "set/show dcache line-size" and "set/show dcache size" zinteger commands instead of uinteger.
	
	It doesn't make sense to request an "unlimited" dcache.  You want to
	configure the cache with specific lines and length of lines.
	
	It doesn't actually work anyway:
	
	(gdb) set dcache line-size 0
	Invalid dcache line size: 4294967295 (must be power of 2).
	
	(gdb) set dcache size 0
	(gdb) show dcache size
	Number of dcache lines is unlimited.
	
	(gdb) info dcache
	Dcache 4294967295 lines of 64 bytes each.
	No data cache available.
	
	The code already has guards in place to forbid 0s:
	
	static void
	set_dcache_size (char *args, int from_tty,
	struct cmd_list_element *c)
	{
	if (dcache_size == 0)
	{
	dcache_size = DCACHE_DEFAULT_SIZE;
	error (_("Dcache size must be greater than 0."));
	}
	if (last_cache)
	dcache_invalidate (last_cache);
	}
	
	static void
	set_dcache_line_size (char *args, int from_tty,
	struct cmd_list_element *c)
	{
	if (dcache_line_size < 2
	|| (dcache_line_size & (dcache_line_size - 1)) != 0)
	{
	unsigned d = dcache_line_size;
	dcache_line_size = DCACHE_DEFAULT_LINE_SIZE;
	error (_("Invalid dcache line size: %u (must be power of 2)."), d);
	}
	if (last_cache)
	dcache_invalidate (last_cache);
	}
	
	So we now get:
	
	(gdb) set dcache line-size 0
	Invalid dcache line size: 0 (must be power of 2).
	(gdb) set dcache size 0
	Dcache size must be greater than 0.
	
	gdb/
	2013-03-26  Pedro Alves  <palves@redhat.com>
	
	* dcache.c (_initialize_dcache): Make the "set dcache line-size"
	and "set dcache size" commands zuinteger instead of uinteger.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/ChangeLog.diff?cvsroot=src&r1=1.15317&r2=1.15318
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gdb/dcache.c.diff?cvsroot=src&r1=1.49&r2=1.50


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