]> cvs.zerfleddert.de Git - proxmark3-svn/blobdiff - bootrom/ldscript-flash
Hopefully correct code for C's strict aliasing rules
[proxmark3-svn] / bootrom / ldscript-flash
index 142924a8508dc51b35d718d4e94d9bbd19fc0277..ccc0db2ffef2e297f6faeda354d7bca7af52b9b4 100644 (file)
@@ -18,7 +18,7 @@ SECTIONS
        _version_information_start = ABSOLUTE(.);\r
        *(.version_information);\r
        \r
        _version_information_start = ABSOLUTE(.);\r
        *(.version_information);\r
        \r
-       /* Why doesn't this work even though _bootphase1_version_pointer = 0x1001fc?
+       /* Why doesn't this work even though _bootphase1_version_pointer = 0x1001fc?\r
          . = _bootphase1_version_pointer - ORIGIN(bootphase1); */\r
        /* This works, apparently it fools the linker into accepting an absolute address */\r
        . = _bootphase1_version_pointer - ORIGIN(bootphase1) + ORIGIN(bootphase1);\r
          . = _bootphase1_version_pointer - ORIGIN(bootphase1); */\r
        /* This works, apparently it fools the linker into accepting an absolute address */\r
        . = _bootphase1_version_pointer - ORIGIN(bootphase1) + ORIGIN(bootphase1);\r
@@ -30,6 +30,7 @@ SECTIONS
        __bootphase2_start__ = .;\r
        *(.startphase2)\r
        *(.text)\r
        __bootphase2_start__ = .;\r
        *(.startphase2)\r
        *(.text)\r
+       *(.eh_frame)\r
        *(.glue_7)\r
        *(.glue_7t)\r
        *(.rodata)\r
        *(.glue_7)\r
        *(.glue_7t)\r
        *(.rodata)\r
@@ -45,4 +46,8 @@ SECTIONS
     \r
     . = ALIGN( 32 / 8 );\r
     __bss_end__ = .;\r
     \r
     . = ALIGN( 32 / 8 );\r
     __bss_end__ = .;\r
+    \r
+    .commonarea (NOLOAD) : {\r
+       *(.commonarea)\r
+    } >commonarea\r
 }\r
 }\r
Impressum, Datenschutz