>> Хинт: посмотри для платформы или выкинь интринсик и впили свой код.
>> Какие-то интринсики, билтинсы и проч. Всегда хочется оторвать бошку за это при програмизме под микроконтроллеры и проч. Когда нечего возразить по теме, прискипайся к стандартному примеру баре метал хеловорда.
> А нельзя как-то сразу сказать что мне не надо медвежьих услуг? Ну
> и вообще, я вон посмотрел как растовик-затейник пытался решить "проблему Тойоты".
Т.е. по теме сказать нечего.
> так сложно и криво? Эта типа-системная штука вообще не умеет изначально
> одуплять в кастомные лэйауты памяти? Или wtf?
$ cat link.x
/* Memory layout of the LM3S6965 microcontroller */
/* 1K = 1 KiBi = 1024 bytes */
MEMORY
{
FLASH : ORIGIN = 0x00000000, LENGTH = 256K
RAM : ORIGIN = 0x20000000, LENGTH = 64K
}/* The entry point is the reset handler */
ENTRY(Reset);
EXTERN(RESET_VECTOR);
SECTIONS
{
.vector_table ORIGIN(FLASH) :
{
/* First entry: initial Stack Pointer value */
LONG(ORIGIN(RAM) + LENGTH(RAM));
/* Second entry: reset vector */
KEEP(*(.vector_table.reset_vector));
} > FLASH
.text :
{
*(.text .text.*);
} > FLASH
/DISCARD/ :
{
*(.ARM.exidx .ARM.exidx.*);
}
}
Оно?
> на вид, ему бы какой-нибудь "freestanding mode" оформленый стандартом, как в
> c99 сделали, чтоли, не?
Смею заметить, что сделали аж 30 лет спустя. И эта, давно хотел спросить как у вас там с альтернативными компиляторами-то? А то сначала "ну, для gcc нужно еще сделать то и это", затем - "смотри стандарты".
> Самое логичное - ну, мой собственный обработчик позвать. Оно будет возбухать если
> своим обработчком их дефолтное барахло с какими-то там "трапами" перекрыть?
Изволите издеваться или не изволите читать? Дефолтное барахло в примере предоставляется самим погромистом компилеру. Только что анонимы возмущались по этому поводу.