1436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#include <stdio.h>
2436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov#include "macro_load_store.h"
3436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
4436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanovint main()
5436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov{
6436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   int i;
7436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   int s1 = sizeof(int);
8436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   int s2 = sizeof(unsigned long long);
9436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   init_reg_val2();
10436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   /**********************************************************************/
11436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   /*-------------------------------LOAD---------------------------------*/
12436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   /**********************************************************************/
13436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   printf("--- LDC1 ---\n");
14436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   for (i = 0; i < N*s1; i = i+8)
15436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov      TEST3("ldc1", i, reg_val1);
16436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
17436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   for (i = 0; i < N*s2; i = i+8)
18436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov      TEST3("ldc1", i, reg_val2);
19436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
20436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   printf("--- LDXC1 ---\n");
21436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   for (i = 0; i < N*s1; i = i+8)
22436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov      TEST5("ldxc1", i, reg_val1);
23436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
24436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   for (i = 0; i < N*s2; i = i+8)
25436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov      TEST5("ldxc1", i, reg_val2);
26436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
27436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   printf("--- LWC1 ---\n");
28436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   for (i = 0; i < N*s1; i = i+4)
29436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov      TEST3w("lwc1", i, reg_val1);
30436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
31436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   for (i = 0; i < N*s2; i = i+4)
32436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov      TEST3w("lwc1", i, reg_val2);
33436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
34436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   printf("--- LWXC1 ---\n");
35436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   for (i = 0; i < N*s1; i = i+4)
36436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov      TEST5w("lwxc1", i, reg_val1);
37436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
38436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   for (i = 0; i < N*s2; i = i+4)
39436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov      TEST5w("lwxc1", i, reg_val2);
40436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
41436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   /**********************************************************************/
42436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   /*-------------------------------STORE--------------------------------*/
43436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   /**********************************************************************/
44436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   init_reg_val_zero();
45436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   printf("--- SDC1 ---\n");
46436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   for (i = 0; i < N*s1; i = i+8) {
47436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov      TEST4("sdc1", i);
48436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   }
49436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
50436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   init_reg_val_zero();
51436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   printf("--- SWC1 ---\n");
52436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   for (i = 0; i < (N-1)*s1; i = i+4) {
53436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov      TEST4("swc1", i);
54436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   }
55436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
56436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   init_reg_val_zero();
57436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   printf("--- SDXC1 ---\n");
58436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   for (i = 0; i < N*s1; i = i+8) {
59436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov      TEST6("sdxc1", i);
60436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   }
61436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
62436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   init_reg_val_zero();
63436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   printf("--- SWXC1 ---\n");
64436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   for (i = 0; i < (N-1)*s1; i = i+4) {
65436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov      TEST6("swxc1", i);
66436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   }
67436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov
68436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov   return 0;
69436e89c602e787e7a27dd6624b09beed41a0da8aDmitriy Ivanov}
70