Datasheet

Differences
2-6 Copyright © 1999-2001 ARM Limited. All rights reserved. ARM DUI 0064D
New or changed compiler options and pragmas
The following compiler options are changed for ADS 1.2:
-asm
This option can now output both assembly files (
.s
) and object code (
.o
).
-Ono_data_reorder
Turns off the automatic reordering of top-level data items (for example,
globals). The C/C++ compilers of ADS 1.1 and later now automatically
reorder memory to eliminate wasted space between data items. However,
if legacy code makes assumptions about ordering of data by the compiler,
this optimization might break the code.
Note
The C standard does not guarantee data order, so you must avoid writing
code that depends on a certain ordering.
-Ono_known_library
The
-Oknown_library
option enabled specific optimizations that were
dependent on the supplied ARM C library. This option has been removed.
-Ono_known_library
is the default and only option.
The following compiler pragma is new for ADS 1.2:
arm section
This pragma specifies the code or data section name that will be used for
subsequent objects. This enables more specific placement of code and
data sections.
The following symbols are new for ADS 1.2:
__use_no_heap()
Guards against use of
malloc()
,
realloc()
,
free()
, and any function that
uses those (such as
calloc()
and
stdio
). This is provided to assist you in
tailoring memory management.
__use_no_heap_region()
Has the same properties as
__use_no_heap()
, but in addition, guards
against uses of the heap memory region. For example, if you declare
main()
as a function taking arguments, the heap region is used for
collecting
argc
and
argv
.