7.13.33 Встроенные функции RX
GCC поддерживает некоторые инструкции RX, которые нельзя выразить на языке программирования C, с помощью встроенных функций. Поддерживаются следующие функции:
-
Встроенная функция:
void__builtin_rx_brk(void) Генерирует машинную инструкцию
brk.
-
Встроенная функция:
void__builtin_rx_clrpsw(int) Генерирует машинную инструкцию
clrpswдля сброса указанного бита в слове состояния процессора.
-
Встроенная функция:
void__builtin_rx_int(int) Генерирует машинную инструкцию
intдля генерации прерывания с указанным значением.
-
Встроенная функция:
void__builtin_rx_machi(int, int) Генерирует машинную инструкцию
machiдля добавления в аккумулятор результата умножения старших 16 бит обоих аргументов.
-
Встроенная функция:
void__builtin_rx_maclo(int, int) Генерирует машинную инструкцию
macloдля добавления в аккумулятор результата умножения младших 16 бит обоих аргументов.
-
Встроенная функция:
void__builtin_rx_mulhi(int, int) Генерирует машинную инструкцию
mulhiдля помещения в аккумулятор результата умножения старших 16 бит обоих аргументов.
-
Встроенная функция:
void__builtin_rx_mullo(int, int) Генерирует машинную инструкцию
mulloдля помещения в аккумулятор результата умножения младших 16 бит обоих аргументов.
-
Встроенная функция:
int__builtin_rx_mvfachi(void) Генерирует машинную инструкцию
mvfachiдля чтения старших 32 бит аккумулятора.
-
Встроенная функция:
int__builtin_rx_mvfacmi(void) Генерирует машинную инструкцию
mvfacmiдля чтения средних 32 бит аккумулятора.
-
Встроенная функция:
int__builtin_rx_mvfc(int) Генерирует машинную инструкцию
mvfc, которая считывает указанный в аргументе управляющий регистр и возвращает его значение.
-
Встроенная функция:
void__builtin_rx_mvtachi(int) Генерирует машинную инструкцию
mvtachiдля установки старших 32 бит аккумулятора.
-
Встроенная функция:
void__builtin_rx_mvtaclo(int) Генерирует машинную инструкцию
mvtacloдля установки младших 32 бит аккумулятора.
-
Встроенная функция:
void__builtin_rx_mvtc(int reg, int val) Генерирует машинную инструкцию
mvtc, которая устанавливает управляющий регистр с номеромregв значениеval.
-
Встроенная функция:
void__builtin_rx_mvtipl(int) Генерирует машинную инструкцию
mvtiplдля установки уровня приоритета прерываний.
-
Встроенная функция:
void__builtin_rx_racw(int) Генерирует машинную инструкцию
racwдля округления аккумулятора в соответствии с указанным режимом.
-
Встроенная функция:
int__builtin_rx_revw(int) Генерирует машинную инструкцию
revw, которая меняет местами байты аргумента так, что биты 0–7 занимают позиции битов 8–15, и наоборот, а биты 16–23 занимают позиции битов 24–31, и наоборот.
-
Встроенная функция:
void__builtin_rx_rmpa(void) Генерирует машинную инструкцию
rmpa, которая запускает последовательность повторяющихся операций умножения и накопления.
-
Встроенная функция:
void__builtin_rx_round(float) Генерирует машинную инструкцию
round, которая возвращает аргумент с плавающей точкой, округленный в соответствии с текущим режимом округления, установленным в регистре слова состояния операций с плавающей точкой.
-
Встроенная функция:
int__builtin_rx_sat(int) Генерирует машинную инструкцию
sat, которая возвращает насыщенное значение аргумента.
-
Встроенная функция:
void__builtin_rx_setpsw(int) Генерирует машинную инструкцию
setpswдля установки указанного бита в слове состояния процессора.
-
Встроенная функция:
void__builtin_rx_wait(void) Генерирует машинную инструкцию
wait.
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-15.3.0/gcc/RX-Built_002din-Functions.html