| GBLL    THUMBCODE [ {CONFIG} = 16
 THUMBCODE SETL  {TRUE}
 CODE32
 |
 THUMBCODE SETL  {FALSE}
 ]
 
 [ :LNOT:THUMBCODE
 bl Main ;Do not use main() because ......
 ;ldr pc, =Main ;
 b .
 ]
 [ THUMBCODE  ;for start-up code for Thumb mode
 orr lr,pc,#1
 bx lr
 CODE16
 bl Main ;Do not use main() because ......
 b .
 CODE32
 ]
 |