Files
clang-p2996/bolt/test/Inputs/jump_table_icp.cpp
Vladislav Khmelevsky 506a91c089 [BOLT] Move some of the tests to common directory
Some of the tests are not x86-specific, move them to common directory.

Differential Revision: https://reviews.llvm.org/D121261
2022-03-09 14:51:17 +03:00

39 lines
816 B
C++

#include <stdio.h>
#include <stdlib.h>
int total = 0;
int inc(int x) {
switch (x) {
case 0: total += 1 + 0; return 1;
case 1: total += 1 + 1; return 2;
case 2: total += 1 + 2; return 3;
case 3: total += 1 + 3; return 4;
case 4: total += 1 + 4; return 5;
case 5: total += 1 + 5; return 6;
default: return x + 1;
}
}
int inc_dup(int x) {
switch (x) {
case 0: total += 2 + 0; return 1;
case 1: total += 2 + 1; return 2;
case 2: total += 2 + 2; return 3;
case 3: total += 2 + 3; return 4;
case 4: total += 2 + 4; return 5;
case 5: total += 2 + 5; return 6;
default: return x + 1;
}
}
int main() {
int c = 0;
for (int i = 0; i < 10000000; ++i) {
int a = rand() % 7;
int b = rand() % 7;
c += inc(a) - 2*inc_dup(b);
}
return c == 0;
}