OpenRISC Options#

These options are defined for OpenRISC:

-mboard=name#

Configure a board specific runtime. This will be passed to the linker for newlib board library linking. The default is or1ksim.

-mnewlib#

This option is ignored; it is for compatibility purposes only. This used to select linker and preprocessor options for use with newlib.

-msoft-div, -mhard-div#

Select software or hardware divide (l.div, l.divu) instructions. This default is hardware divide.

-msoft-mul, -mhard-mul#

Select software or hardware multiply (l.mul, l.muli) instructions. This default is hardware multiply.

-msoft-float, -mhard-float#

Select software or hardware for floating point operations. The default is software.

-mdouble-float#

When -mhard-float is selected, enables generation of double-precision floating point instructions. By default functions from libgcc are used to perform double-precision floating point operations.

-munordered-float#

When -mhard-float is selected, enables generation of unordered floating point compare and set flag (lf.sfun*) instructions. By default functions from libgcc are used to perform unordered floating point compare and set flag operations.

-mcmov#

Enable generation of conditional move (l.cmov) instructions. By default the equivalent will be generated using set and branch.

-mror#

Enable generation of rotate right (l.ror) instructions. By default functions from libgcc are used to perform rotate right operations.

-mrori#

Enable generation of rotate right with immediate (l.rori) instructions. By default functions from libgcc are used to perform rotate right with immediate operations.

-msext#

Enable generation of sign extension (l.ext*) instructions. By default memory loads are used to perform sign extension.

-msfimm#

Enable generation of compare and set flag with immediate (l.sf*i) instructions. By default extra instructions will be generated to store the immediate to a register first.

-mshftimm#

Enable generation of shift with immediate (l.srai, l.srli, l.slli) instructions. By default extra instructions will be generated to store the immediate to a register first.

-mcmodel=small#

Generate OpenRISC code for the small model: The GOT is limited to 64k. This is the default model.

-mcmodel=large#

Generate OpenRISC code for the large model: The GOT may grow up to 4G in size.