gnu ldでグローバル変数の配置順を指定する方法 gcc (H8) (gcc:8.3.0, binutils:2.32, Newlib:3.1.0) map : .nonvolatile : { *(.nonvolatile) } > ram : #define NV_SECT __attribute__((section(".nonvolatile"))) double a NV_SECT; unsigned int b NV_SECT; unsigned char c NV_SECT; : 0x0000000000400000 _c 0x0000000000400002 _b 0x0000000000400004 _a gnu ld GCC compiles EEPROM addresses in reverse order 1. : 2. : 3. : "nonvolatile.a"
gcc Renesas H8 C/C++ Compiler
H8CC/SHCC `-stuff` 1. `struct`
1. 3.
c++ `struct`/`class` ICE
xcX3v84RxoQ-4GxG32940ukFUIEgYdPy
ab5b99063ec3a34f6ac43588e5186766
Stop