This is for consistency with Clang, which always adds a CPU flag even if it's not specified in CFLAGS. This commit also adds some tests to make sure the Clang target-cpu matches the CPU property in the JSON files. This does have an effect on the generated binaries. The effect is very small though: on average just 0.2% increase in binary size, apparently because Cortex-M3 and Cortex-M4 are compiled a bit differently. However, when rebased on top of https://github.com/tinygo-org/tinygo/pull/2218 (minsize), the difference drops to -0.1% (a slight decrease on average).
		
			
				
	
	
		
			18 строки
		
	
	
	
		
			485 Б
		
	
	
	
		
			JSON
		
	
	
	
	
	
			
		
		
	
	
			18 строки
		
	
	
	
		
			485 Б
		
	
	
	
		
			JSON
		
	
	
	
	
	
{
 | 
						|
	"inherits": ["xtensa"],
 | 
						|
	"cpu": "esp32",
 | 
						|
	"build-tags": ["esp32", "esp"],
 | 
						|
	"scheduler": "tasks",
 | 
						|
	"serial": "uart",
 | 
						|
	"linker": "xtensa-esp32-elf-ld",
 | 
						|
	"default-stack-size": 2048,
 | 
						|
	"rtlib": "compiler-rt",
 | 
						|
	"libc": "picolibc",
 | 
						|
	"linkerscript": "targets/esp32.ld",
 | 
						|
	"extra-files": [
 | 
						|
		"src/device/esp/esp32.S",
 | 
						|
		"src/internal/task/task_stack_esp32.S"
 | 
						|
	],
 | 
						|
	"binary-format": "esp32",
 | 
						|
	"flash-command": "esptool.py --chip=esp32 --port {port} write_flash 0x1000 {bin} -ff 80m -fm dout"
 | 
						|
}
 |