Next: Raw read/write Functions, Previous: Directly-mapped Integer Functions, Up: FR-V Built-in Functions
The functions listed below map directly to FR-V M-type instructions.
Function prototype | Example usage | Assembly output
|
uw1 __MABSHS (sw1)
| b = __MABSHS ( a)
| MABSHS a, b
|
void __MADDACCS (acc, acc)
| __MADDACCS ( b, a)
| MADDACCS a, b
|
sw1 __MADDHSS (sw1, sw1)
| c = __MADDHSS ( a, b)
| MADDHSS a, b, c
|
uw1 __MADDHUS (uw1, uw1)
| c = __MADDHUS ( a, b)
| MADDHUS a, b, c
|
uw1 __MAND (uw1, uw1)
| c = __MAND ( a, b)
| MAND a, b, c
|
void __MASACCS (acc, acc)
| __MASACCS ( b, a)
| MASACCS a, b
|
uw1 __MAVEH (uw1, uw1)
| c = __MAVEH ( a, b)
| MAVEH a, b, c
|
uw2 __MBTOH (uw1)
| b = __MBTOH ( a)
| MBTOH a, b
|
void __MBTOHE (uw1 *, uw1)
| __MBTOHE (& b, a)
| MBTOHE a, b
|
void __MCLRACC (acc)
| __MCLRACC ( a)
| MCLRACC a
|
void __MCLRACCA (void)
| __MCLRACCA ()
| MCLRACCA
|
uw1 __Mcop1 (uw1, uw1)
| c = __Mcop1 ( a, b)
| Mcop1 a, b, c
|
uw1 __Mcop2 (uw1, uw1)
| c = __Mcop2 ( a, b)
| Mcop2 a, b, c
|
uw1 __MCPLHI (uw2, const)
| c = __MCPLHI ( a, b)
| MCPLHI a,# b, c
|
uw1 __MCPLI (uw2, const)
| c = __MCPLI ( a, b)
| MCPLI a,# b, c
|
void __MCPXIS (acc, sw1, sw1)
| __MCPXIS ( c, a, b)
| MCPXIS a, b, c
|
void __MCPXIU (acc, uw1, uw1)
| __MCPXIU ( c, a, b)
| MCPXIU a, b, c
|
void __MCPXRS (acc, sw1, sw1)
| __MCPXRS ( c, a, b)
| MCPXRS a, b, c
|
void __MCPXRU (acc, uw1, uw1)
| __MCPXRU ( c, a, b)
| MCPXRU a, b, c
|
uw1 __MCUT (acc, uw1)
| c = __MCUT ( a, b)
| MCUT a, b, c
|
uw1 __MCUTSS (acc, sw1)
| c = __MCUTSS ( a, b)
| MCUTSS a, b, c
|
void __MDADDACCS (acc, acc)
| __MDADDACCS ( b, a)
| MDADDACCS a, b
|
void __MDASACCS (acc, acc)
| __MDASACCS ( b, a)
| MDASACCS a, b
|
uw2 __MDCUTSSI (acc, const)
| c = __MDCUTSSI ( a, b)
| MDCUTSSI a,# b, c
|
uw2 __MDPACKH (uw2, uw2)
| c = __MDPACKH ( a, b)
| MDPACKH a, b, c
|
uw2 __MDROTLI (uw2, const)
| c = __MDROTLI ( a, b)
| MDROTLI a,# b, c
|
void __MDSUBACCS (acc, acc)
| __MDSUBACCS ( b, a)
| MDSUBACCS a, b
|
void __MDUNPACKH (uw1 *, uw2)
| __MDUNPACKH (& b, a)
| MDUNPACKH a, b
|
uw2 __MEXPDHD (uw1, const)
| c = __MEXPDHD ( a, b)
| MEXPDHD a,# b, c
|
uw1 __MEXPDHW (uw1, const)
| c = __MEXPDHW ( a, b)
| MEXPDHW a,# b, c
|
uw1 __MHDSETH (uw1, const)
| c = __MHDSETH ( a, b)
| MHDSETH a,# b, c
|
sw1 __MHDSETS (const)
| b = __MHDSETS ( a)
| MHDSETS # a, b
|
uw1 __MHSETHIH (uw1, const)
| b = __MHSETHIH ( b, a)
| MHSETHIH # a, b
|
sw1 __MHSETHIS (sw1, const)
| b = __MHSETHIS ( b, a)
| MHSETHIS # a, b
|
uw1 __MHSETLOH (uw1, const)
| b = __MHSETLOH ( b, a)
| MHSETLOH # a, b
|
sw1 __MHSETLOS (sw1, const)
| b = __MHSETLOS ( b, a)
| MHSETLOS # a, b
|
uw1 __MHTOB (uw2)
| b = __MHTOB ( a)
| MHTOB a, b
|
void __MMACHS (acc, sw1, sw1)
| __MMACHS ( c, a, b)
| MMACHS a, b, c
|
void __MMACHU (acc, uw1, uw1)
| __MMACHU ( c, a, b)
| MMACHU a, b, c
|
void __MMRDHS (acc, sw1, sw1)
| __MMRDHS ( c, a, b)
| MMRDHS a, b, c
|
void __MMRDHU (acc, uw1, uw1)
| __MMRDHU ( c, a, b)
| MMRDHU a, b, c
|
void __MMULHS (acc, sw1, sw1)
| __MMULHS ( c, a, b)
| MMULHS a, b, c
|
void __MMULHU (acc, uw1, uw1)
| __MMULHU ( c, a, b)
| MMULHU a, b, c
|
void __MMULXHS (acc, sw1, sw1)
| __MMULXHS ( c, a, b)
| MMULXHS a, b, c
|
void __MMULXHU (acc, uw1, uw1)
| __MMULXHU ( c, a, b)
| MMULXHU a, b, c
|
uw1 __MNOT (uw1)
| b = __MNOT ( a)
| MNOT a, b
|
uw1 __MOR (uw1, uw1)
| c = __MOR ( a, b)
| MOR a, b, c
|
uw1 __MPACKH (uh, uh)
| c = __MPACKH ( a, b)
| MPACKH a, b, c
|
sw2 __MQADDHSS (sw2, sw2)
| c = __MQADDHSS ( a, b)
| MQADDHSS a, b, c
|
uw2 __MQADDHUS (uw2, uw2)
| c = __MQADDHUS ( a, b)
| MQADDHUS a, b, c
|
void __MQCPXIS (acc, sw2, sw2)
| __MQCPXIS ( c, a, b)
| MQCPXIS a, b, c
|
void __MQCPXIU (acc, uw2, uw2)
| __MQCPXIU ( c, a, b)
| MQCPXIU a, b, c
|
void __MQCPXRS (acc, sw2, sw2)
| __MQCPXRS ( c, a, b)
| MQCPXRS a, b, c
|
void __MQCPXRU (acc, uw2, uw2)
| __MQCPXRU ( c, a, b)
| MQCPXRU a, b, c
|
sw2 __MQLCLRHS (sw2, sw2)
| c = __MQLCLRHS ( a, b)
| MQLCLRHS a, b, c
|
sw2 __MQLMTHS (sw2, sw2)
| c = __MQLMTHS ( a, b)
| MQLMTHS a, b, c
|
void __MQMACHS (acc, sw2, sw2)
| __MQMACHS ( c, a, b)
| MQMACHS a, b, c
|
void __MQMACHU (acc, uw2, uw2)
| __MQMACHU ( c, a, b)
| MQMACHU a, b, c
|
void __MQMACXHS (acc, sw2, sw2)
| __MQMACXHS ( c, a, b)
| MQMACXHS a, b, c
|
void __MQMULHS (acc, sw2, sw2)
| __MQMULHS ( c, a, b)
| MQMULHS a, b, c
|
void __MQMULHU (acc, uw2, uw2)
| __MQMULHU ( c, a, b)
| MQMULHU a, b, c
|
void __MQMULXHS (acc, sw2, sw2)
| __MQMULXHS ( c, a, b)
| MQMULXHS a, b, c
|
void __MQMULXHU (acc, uw2, uw2)
| __MQMULXHU ( c, a, b)
| MQMULXHU a, b, c
|
sw2 __MQSATHS (sw2, sw2)
| c = __MQSATHS ( a, b)
| MQSATHS a, b, c
|
uw2 __MQSLLHI (uw2, int)
| c = __MQSLLHI ( a, b)
| MQSLLHI a, b, c
|
sw2 __MQSRAHI (sw2, int)
| c = __MQSRAHI ( a, b)
| MQSRAHI a, b, c
|
sw2 __MQSUBHSS (sw2, sw2)
| c = __MQSUBHSS ( a, b)
| MQSUBHSS a, b, c
|
uw2 __MQSUBHUS (uw2, uw2)
| c = __MQSUBHUS ( a, b)
| MQSUBHUS a, b, c
|
void __MQXMACHS (acc, sw2, sw2)
| __MQXMACHS ( c, a, b)
| MQXMACHS a, b, c
|
void __MQXMACXHS (acc, sw2, sw2)
| __MQXMACXHS ( c, a, b)
| MQXMACXHS a, b, c
|
uw1 __MRDACC (acc)
| b = __MRDACC ( a)
| MRDACC a, b
|
uw1 __MRDACCG (acc)
| b = __MRDACCG ( a)
| MRDACCG a, b
|
uw1 __MROTLI (uw1, const)
| c = __MROTLI ( a, b)
| MROTLI a,# b, c
|
uw1 __MROTRI (uw1, const)
| c = __MROTRI ( a, b)
| MROTRI a,# b, c
|
sw1 __MSATHS (sw1, sw1)
| c = __MSATHS ( a, b)
| MSATHS a, b, c
|
uw1 __MSATHU (uw1, uw1)
| c = __MSATHU ( a, b)
| MSATHU a, b, c
|
uw1 __MSLLHI (uw1, const)
| c = __MSLLHI ( a, b)
| MSLLHI a,# b, c
|
sw1 __MSRAHI (sw1, const)
| c = __MSRAHI ( a, b)
| MSRAHI a,# b, c
|
uw1 __MSRLHI (uw1, const)
| c = __MSRLHI ( a, b)
| MSRLHI a,# b, c
|
void __MSUBACCS (acc, acc)
| __MSUBACCS ( b, a)
| MSUBACCS a, b
|
sw1 __MSUBHSS (sw1, sw1)
| c = __MSUBHSS ( a, b)
| MSUBHSS a, b, c
|
uw1 __MSUBHUS (uw1, uw1)
| c = __MSUBHUS ( a, b)
| MSUBHUS a, b, c
|
void __MTRAP (void)
| __MTRAP ()
| MTRAP
|
uw2 __MUNPACKH (uw1)
| b = __MUNPACKH ( a)
| MUNPACKH a, b
|
uw1 __MWCUT (uw2, uw1)
| c = __MWCUT ( a, b)
| MWCUT a, b, c
|
void __MWTACC (acc, uw1)
| __MWTACC ( b, a)
| MWTACC a, b
|
void __MWTACCG (acc, uw1)
| __MWTACCG ( b, a)
| MWTACCG a, b
|
uw1 __MXOR (uw1, uw1)
| c = __MXOR ( a, b)
| MXOR a, b, c
|