
The needed stack size is hard to determine by the compiler. It will try, but will fail in many common cases. Therefore, the runtime will pick a fixed stack size. There is a tradeoff between avoiding stack overflows and wasting RAM. This tradeoff depends on the application: some don't need large stack sizes but do need a lot of memory, while others need deep stacks but aren't so memory constrained. That's why I've added a flag to do this on the command line: https://github.com/tinygo-org/tinygo/pull/3159 It may be reasonable to use a different stack size per chip, for example chips with lots of RAM could default to a larger stack size. But I don't think it's a good idea to do this per board.
12 строки
350 Б
JSON
12 строки
350 Б
JSON
{
|
|
"inherits": ["cortex-m7"],
|
|
"build-tags": ["teensy41", "teensy", "mimxrt1062", "nxp"],
|
|
"serial": "uart",
|
|
"automatic-stack-size": false,
|
|
"linkerscript": "targets/mimxrt1062-teensy40.ld",
|
|
"extra-files": [
|
|
"src/device/nxp/mimxrt1062.s",
|
|
"targets/teensy40.s"
|
|
],
|
|
"flash-command": "teensy_loader_cli -mmcu=imxrt1062 -v -w {hex}"
|
|
}
|