#### 3.17.29 picoChip Options

These ‘`-m`’ options are defined for picoChip implementations:

`-mae=`ae_type
  Set the instruction set, register set, and instruction scheduling parameters for array element type ae_type. Supported values for ae_type are ‘`ANY`’, ‘`MUL`’, and ‘`MAC`’.

  `-mae=ANY` selects a completely generic AE type. Code generated with this option will run on any of the other AE types. The code will not be as efficient as it would be if compiled for a specific AE type, and some types of operation (e.g., multiplication) will not work properly on all types of AE.

  `-mae=MUL` selects a MUL AE type. This is the most useful AE type for compiled code, and is the default.

  `-mae=MAC` selects a DSP-style MAC AE. Code compiled with this option may suffer from poor performance of byte (char) manipulation, since the DSP AE does not provide hardware support for byte load/stores.

`-msymbol-as-address`
  Enable the compiler to directly use a symbol name as an address in a load/store instruction, without first loading it into a register. Typically, the use of this option will generate larger programs, which run faster than when the option isn't used. However, the results vary from program to program, so it is left as a user option, rather than being permanently enabled.
`-mno-inefficient-warnings`
  Disables warnings about the generation of inefficient code. These warnings can be generated, for example, when compiling code which performs byte-level memory operations on the MAC AE type. The MAC AE has no hardware support for byte-level memory operations, so all byte load/stores must be synthesized from word load/store operations. This is inefficient and a warning will be generated indicating to the programmer that they should rewrite the code to avoid byte operations, or to target an AE type which has the necessary hardware support. This option enables the warning to be turned off.