📄 fr405-builtins-1.c
字号:
/* Test the IACC multiply/accumulate instructions. Also test the IACC read/write functions. *//* { dg-options "-mcpu=fr405" } *//* { dg-do run } */extern void abort (void);extern void exit (int);int main (){ long long res, res1, res2, res3; __SMU (0x12345678, 0x40004000); __SMASS (0x12000000, 0x11223344); __SMSSS (0x01020304, 0x54321000); res = __IACCreadll (0); res1 = 0x12345678LL * 0x40004000LL; res2 = 0x12000000LL * 0x11223344LL; res3 = 0x01020304LL * 0x54321000LL; if (res != res1 + res2 - res3) abort (); __IACCsetll (0, 0x7ffffffffffffff0LL); __SMASS (0x100, 0x100); if (__IACCreadll (0) != 0x7fffffffffffffffLL) abort (); __IACCsetl (0, -0x7ffffffe); __IACCsetl (1, 0); __SMSSS (0x10001, 0x10000); if (__IACCreadl (0) != -0x7fffffff - 1 || __IACCreadl (1) != -0x10000) abort (); __SMSSS (0x10001, 0x10000); if (__IACCreadl (0) != -0x7fffffff - 1 || __IACCreadl (1) != 0) abort (); exit (0);}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -