mirror of
				https://github.com/qemu/qemu.git
				synced 2025-10-31 12:07:31 +00:00 
			
		
		
		
	 adeefe0167
			
		
	
	
		adeefe0167
		
	
	
	
	
		
			
			This commit was produced with the included Coccinelle script scripts/coccinelle/exec_rw_const. Inspired-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
		
			
				
	
	
		
			112 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			112 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| /*
 | |
|   Usage:
 | |
| 
 | |
|     spatch \
 | |
|            --macro-file scripts/cocci-macro-file.h \
 | |
|            --sp-file scripts/coccinelle/exec_rw_const.cocci \
 | |
|            --keep-comments \
 | |
|            --in-place \
 | |
|            --dir .
 | |
| */
 | |
| 
 | |
| // Convert to boolean
 | |
| @@
 | |
| expression E1, E2, E3, E4, E5;
 | |
| @@
 | |
| (
 | |
| - address_space_rw(E1, E2, E3, E4, E5, 0)
 | |
| + address_space_rw(E1, E2, E3, E4, E5, false)
 | |
| |
 | |
| - address_space_rw(E1, E2, E3, E4, E5, 1)
 | |
| + address_space_rw(E1, E2, E3, E4, E5, true)
 | |
| |
 | |
| 
 | |
| - cpu_physical_memory_rw(E1, E2, E3, 0)
 | |
| + cpu_physical_memory_rw(E1, E2, E3, false)
 | |
| |
 | |
| - cpu_physical_memory_rw(E1, E2, E3, 1)
 | |
| + cpu_physical_memory_rw(E1, E2, E3, true)
 | |
| |
 | |
| 
 | |
| - cpu_physical_memory_map(E1, E2, 0)
 | |
| + cpu_physical_memory_map(E1, E2, false)
 | |
| |
 | |
| - cpu_physical_memory_map(E1, E2, 1)
 | |
| + cpu_physical_memory_map(E1, E2, true)
 | |
| )
 | |
| 
 | |
| // Use address_space_write instead of casting to non-const
 | |
| @@
 | |
| type T;
 | |
| const T *V;
 | |
| expression E1, E2, E3, E4;
 | |
| @@
 | |
| (
 | |
| - address_space_rw(E1, E2, E3, (T *)V, E4, 1)
 | |
| + address_space_write(E1, E2, E3, V, E4)
 | |
| |
 | |
| - address_space_rw(E1, E2, E3, (void *)V, E4, 1)
 | |
| + address_space_write(E1, E2, E3, V, E4)
 | |
| )
 | |
| 
 | |
| // Avoid uses of address_space_rw() with a constant is_write argument.
 | |
| @@
 | |
| expression E1, E2, E3, E4, E5;
 | |
| symbol true, false;
 | |
| @@
 | |
| (
 | |
| - address_space_rw(E1, E2, E3, E4, E5, false)
 | |
| + address_space_read(E1, E2, E3, E4, E5)
 | |
| |
 | |
| - address_space_rw(E1, E2, E3, E4, E5, true)
 | |
| + address_space_write(E1, E2, E3, E4, E5)
 | |
| )
 | |
| 
 | |
| // Avoid uses of cpu_physical_memory_rw() with a constant is_write argument.
 | |
| @@
 | |
| expression E1, E2, E3;
 | |
| @@
 | |
| (
 | |
| - cpu_physical_memory_rw(E1, E2, E3, false)
 | |
| + cpu_physical_memory_read(E1, E2, E3)
 | |
| |
 | |
| - cpu_physical_memory_rw(E1, E2, E3, true)
 | |
| + cpu_physical_memory_write(E1, E2, E3)
 | |
| )
 | |
| 
 | |
| // Remove useless cast
 | |
| @@
 | |
| expression E1, E2, E3, E4, E5, E6;
 | |
| type T;
 | |
| @@
 | |
| (
 | |
| - address_space_rw(E1, E2, E3, (T *)(E4), E5, E6)
 | |
| + address_space_rw(E1, E2, E3, E4, E5, E6)
 | |
| |
 | |
| - address_space_read(E1, E2, E3, (T *)(E4), E5)
 | |
| + address_space_read(E1, E2, E3, E4, E5)
 | |
| |
 | |
| - address_space_write(E1, E2, E3, (T *)(E4), E5)
 | |
| + address_space_write(E1, E2, E3, E4, E5)
 | |
| |
 | |
| - address_space_write_rom(E1, E2, E3, (T *)(E4), E5)
 | |
| + address_space_write_rom(E1, E2, E3, E4, E5)
 | |
| |
 | |
| 
 | |
| - cpu_physical_memory_rw(E1, (T *)(E2), E3, E4)
 | |
| + cpu_physical_memory_rw(E1, E2, E3, E4)
 | |
| |
 | |
| - cpu_physical_memory_read(E1, (T *)(E2), E3)
 | |
| + cpu_physical_memory_read(E1, E2, E3)
 | |
| |
 | |
| - cpu_physical_memory_write(E1, (T *)(E2), E3)
 | |
| + cpu_physical_memory_write(E1, E2, E3)
 | |
| |
 | |
| 
 | |
| - dma_memory_read(E1, E2, (T *)(E3), E4)
 | |
| + dma_memory_read(E1, E2, E3, E4)
 | |
| |
 | |
| - dma_memory_write(E1, E2, (T *)(E3), E4)
 | |
| + dma_memory_write(E1, E2, E3, E4)
 | |
| )
 |