-mcpu=cpu[-sirevision]The optional sirevision specifies the silicon revision of the target
Blackfin processor. Any workarounds available for the targeted silicon revision
are enabled. If sirevision is ‘none’, no workarounds are enabled.
If sirevision is ‘any’, all workarounds for the targeted processor
are enabled. The __SILICON_REVISION__ macro is defined to two
hexadecimal digits representing the major and minor numbers in the silicon
revision. If sirevision is ‘none’, the __SILICON_REVISION__
is not defined. If sirevision is ‘any’, the
__SILICON_REVISION__ is defined to be 0xffff.
If this optional sirevision is not used, GCC assumes the latest known
silicon revision of the targeted Blackfin processor.
GCC defines a preprocessor macro for the specified cpu. For the ‘bfin-elf’ toolchain, this option causes the hardware BSP provided by libgloss to be linked in if -msim is not given.
Without this option, ‘bf532’ is used as the processor by default.
Note that support for ‘bf561’ is incomplete. For ‘bf561’,
only the preprocessor macro is defined.
-msim-momit-leaf-frame-pointer-mspecld-anomaly__WORKAROUND_SPECULATIVE_LOADS is defined.
-mno-specld-anomaly-mcsync-anomaly__WORKAROUND_SPECULATIVE_SYNCS is defined.
-mno-csync-anomaly-mlow-64k-mno-low-64k-mstack-check-l1-mid-shared-library-mno-id-shared-library-mleaf-id-shared-library-mno-leaf-id-shared-library-mshared-library-id=n-msep-data-mno-sep-data-mlong-calls-mno-long-callsThis feature is not enabled by default. Specifying
-mno-long-calls restores the default behavior. Note these
switches have no effect on how the compiler generates code to handle
function calls via function pointers.
-mfast-fp-minline-plt-mmulticore__BFIN_MULTICORE.
It can only be used with -mcpu=bf561[-sirevision].
This option can be used with -mcorea or -mcoreb, which
selects the one-application-per-core programming model. Without
-mcorea or -mcoreb, the single-application/dual-core
programming model is used. In this model, the main function of Core B
should be named as coreb_main.
If this option is not used, the single-core application programming
model is used.
-mcorea__BFIN_COREA is defined.
This option can only be used in conjunction with -mmulticore.
-mcoreb__BFIN_COREB is defined. When this option is used, coreb_main
should be used instead of main.
This option can only be used in conjunction with -mmulticore.
-msdram__BFIN_SDRAM is defined.
The loader should initialize SDRAM before loading the application.
-micplb