Спасибо за отзыв!
Сейчас уточнил в Reference Manual. Домен для суперсекций всегда 0, а расширение адреса до 40бит только если реализовано расширение LPAE, биты NS и PXN тоже опция. В общем лучше всегда сверяться с документом на конкретную реализацию.
Так это не компилятор должен делать, а среда выполнения перед запуском программы (для С в ISO/IEC 9899:TC3 5.1.2) Если у вас bare-metal, то это должно делаться start.S или его аналоге.
Заголовок спойлера
у нас, например, arm-none-eabi-gcc-6.3.1 кладет это в bss-секцию, которую руками очищаем при старте.
64-bit — the software now has access to more memory, and the code has been refactored in many areas, and written in C#, which has better memory management, and more efficient access to all that 64-bit and multi-threading has to offer.
Вот отличный пример работы с библиотекам на ардуино — habr.com/post/392931 Можно было бы подумать, что автор посмотрит diff, сделает merge, вдруг там поправили ошибки, сделали что-то быстрее. Но нет! Copy-paste наше все.
Сейчас уточнил в Reference Manual. Домен для суперсекций всегда 0, а расширение адреса до 40бит только если реализовано расширение LPAE, биты NS и PXN тоже опция. В общем лучше всегда сверяться с документом на конкретную реализацию.
Тогда о каком C# здесь они пишут?
Сорри, ссылку вставить не получается :(
Так это и есть главная парадигма «разработки» на ардуино! Нахватать библиотек отовсюда, слепить их кое-как и воскликнуть «It's alive!»
Тоже legacy или так и должно быть?!
Или например strings.ino:
memset на Ардуино не подвезли?