Reference: https://developer.arm.com/documentation/dui0474/m/image-structure-and-generation/section-placement-with-the-linker/section-placement-with-the-first-and-last-attributes CAUTION: FIRST and LAST must not violate the basic attribute sorting order. For example, FIRST RW is placed after any read-only code or read-only data. arm-none-eabi-readelf -aS arm_vectors.o 1. Without const: Section Headers: [Nr] Name Type Addr Off Size ES Flg Lk Inf Al [ 3] .vectors PROGBITS 00000000 000034 00011c 00 WA 0 0 4 2. const symbol: [ 3] .vectors PROGBITS 00000000 000034 00011c 00 A 0 0 4 Regression by: | commit 229b57d6cb1c87868e0ca86f6035e56226979fa5 | | arch/armv[6|7|8]-m: Move _vectors to arm_internal.h to avoid the duplication | | and change the type of _vectors from uint32_t to const void * | | Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com> Signed-off-by: chao an <anchao@xiaomi.com>