Why gcc can put _start at 0x1040 while custom assembly code and linker script can not?
I was leaning linker script and wrote assembly code as below:
Placing entry point of GCC program for embedded
I’m interested in compiling GCC programs which will be used on a microcontroller with a boot loader at the top section of memory.
How to use gcc compilation flags to make the .data section of the program execute code
I use -z execstack
flag, But it can’t work. Only the stack has execution permissions, not the .data segment.