Changeset 10995 in vbox for trunk/src/VBox/Runtime/testcase
- Timestamp:
- Jul 30, 2008 3:49:16 PM (17 years ago)
- svn:sync-xref-src-repo-rev:
- 33871
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Runtime/testcase/tstInlineAsm.cpp
r9909 r10995 1071 1071 } 1072 1072 1073 /* 1074 * Make this static. We don't want to have this located on the stack. 1075 */ 1073 1074 void tstASMByteSwap(void) 1075 { 1076 RTPrintf("tstInlineASM: TESTING - ASMByteSwap*\n"); 1077 1078 uint64_t u64In = UINT64_C(0x0011223344556677); 1079 uint64_t u64Out = ASMByteSwapU64(u64In); 1080 CHECKVAL(u64In, UINT64_C(0x0011223344556677), "%#018RX64"); 1081 CHECKVAL(u64Out, UINT64_C(0x7766554433221100), "%#018RX64"); 1082 u64Out = ASMByteSwapU64(u64Out); 1083 CHECKVAL(u64Out, u64In, "%#018RX64"); 1084 u64In = UINT64_C(0x0123456789abcdef); 1085 u64Out = ASMByteSwapU64(u64In); 1086 CHECKVAL(u64In, UINT64_C(0x0123456789abcdef), "%#018RX64"); 1087 CHECKVAL(u64Out, UINT64_C(0xefcdab8967452301), "%#018RX64"); 1088 u64Out = ASMByteSwapU64(u64Out); 1089 CHECKVAL(u64Out, u64In, "%#018RX64"); 1090 u64In = 0; 1091 u64Out = ASMByteSwapU64(u64In); 1092 CHECKVAL(u64Out, u64In, "%#018RX64"); 1093 u64In = ~(uint64_t)0; 1094 u64Out = ASMByteSwapU64(u64In); 1095 CHECKVAL(u64Out, u64In, "%#018RX64"); 1096 1097 uint32_t u32In = UINT32_C(0x00112233); 1098 uint32_t u32Out = ASMByteSwapU32(u32In); 1099 CHECKVAL(u32In, UINT32_C(0x00112233), "%#010RX32"); 1100 CHECKVAL(u32Out, UINT32_C(0x33221100), "%#010RX32"); 1101 u32Out = ASMByteSwapU32(u32Out); 1102 CHECKVAL(u32Out, u32In, "%#010RX32"); 1103 u32In = UINT32_C(0x12345678); 1104 u32Out = ASMByteSwapU32(u32In); 1105 CHECKVAL(u32In, UINT32_C(0x12345678), "%#010RX32"); 1106 CHECKVAL(u32Out, UINT32_C(0x78563412), "%#010RX32"); 1107 u32Out = ASMByteSwapU32(u32Out); 1108 CHECKVAL(u32Out, u32In, "%#010RX32"); 1109 u32In = 0; 1110 u32Out = ASMByteSwapU32(u32In); 1111 CHECKVAL(u32Out, u32In, "%#010RX32"); 1112 u32In = ~(uint32_t)0; 1113 u32Out = ASMByteSwapU32(u32In); 1114 CHECKVAL(u32Out, u32In, "%#010RX32"); 1115 1116 uint16_t u16In = UINT16_C(0x0011); 1117 uint16_t u16Out = ASMByteSwapU16(u16In); 1118 CHECKVAL(u16In, UINT16_C(0x0011), "%#06RX16"); 1119 CHECKVAL(u16Out, UINT16_C(0x1100), "%#06RX16"); 1120 u16Out = ASMByteSwapU16(u16Out); 1121 CHECKVAL(u16Out, u16In, "%#06RX16"); 1122 u16In = UINT16_C(0x1234); 1123 u16Out = ASMByteSwapU16(u16In); 1124 CHECKVAL(u16In, UINT16_C(0x1234), "%#06RX16"); 1125 CHECKVAL(u16Out, UINT16_C(0x3412), "%#06RX16"); 1126 u16Out = ASMByteSwapU16(u16Out); 1127 CHECKVAL(u16Out, u16In, "%#06RX16"); 1128 u16In = 0; 1129 u16Out = ASMByteSwapU16(u16In); 1130 CHECKVAL(u16Out, u16In, "%#06RX16"); 1131 u16In = ~(uint16_t)0; 1132 u16Out = ASMByteSwapU16(u16In); 1133 CHECKVAL(u16Out, u16In, "%#06RX16"); 1134 } 1135 1136 1076 1137 void tstASMBench(void) 1077 1138 { 1139 /* 1140 * Make this static. We don't want to have this located on the stack. 1141 */ 1078 1142 static uint8_t volatile s_u8; 1079 1143 static int8_t volatile s_i8; … … 1175 1239 tstASMMemFill32(); 1176 1240 tstASMMath(); 1241 tstASMByteSwap(); 1177 1242 1178 1243 tstASMBench();
Note:
See TracChangeset
for help on using the changeset viewer.