Explicitly type the constants in poclbm kernel as uint.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134
diff --git a/poclbm120222.cl b/poclbm120222.cl
index 0972fcc..190b0a1 100644
--- a/poclbm120222.cl
+++ b/poclbm120222.cl
@@ -164,7 +164,7 @@ Vals[1]+=(rotr(Vals[2],2)^rotr(Vals[2],13)^rotr(Vals[2],22));
Vals[1]+=Ma(Vals[4],Vals[2],Vals[3]);
Vals[0]+=(rotr(Vals[5],6)^rotr(Vals[5],11)^rotr(Vals[5],25));
Vals[0]+=ch(Vals[5],Vals[6],Vals[7]);
-Vals[0]+=0xC19BF3F4;
+Vals[0]+=0xC19BF3F4U;
Vals[4]+=Vals[0];
Vals[0]+=(rotr(Vals[1],2)^rotr(Vals[1],13)^rotr(Vals[1],22));
Vals[7]+=(rotr(Vals[4],6)^rotr(Vals[4],11)^rotr(Vals[4],25));
@@ -201,7 +201,7 @@ Vals[0]+=Vals[4];
Vals[4]+=(rotr(Vals[5],2)^rotr(Vals[5],13)^rotr(Vals[5],22));
W[4]=(rotr(W[2],17)^rotr(W[2],19)^(W[2]>>10U));
-W[4]+=0x80000000;
+W[4]+=0x80000000U;
Vals[3]+=W[4];
Vals[3]+=(rotr(Vals[0],6)^rotr(Vals[0],11)^rotr(Vals[0],25));
Vals[3]+=ch(Vals[0],Vals[1],Vals[2]);
@@ -652,14 +652,14 @@ W[0]=Vals[0];
W[7]=state7;
W[7]+=Vals[7];
-Vals[7]=0xF377ED68;
+Vals[7]=0xF377ED68U;
W[0]+=state0;
Vals[7]+=W[0];
W[3]=state3;
W[3]+=Vals[3];
-Vals[3]=0xa54ff53a;
+Vals[3]=0xa54ff53aU;
Vals[3]+=Vals[7];
W[1]=Vals[1];
@@ -668,7 +668,7 @@ W[1]+=state1;
W[6]=state6;
W[6]+=Vals[6];
-Vals[6]=0x90BB1E3C;
+Vals[6]=0x90BB1E3CU;
Vals[6]+=(rotr(Vals[3],6)^rotr(Vals[3],11)^rotr(Vals[3],25));
Vals[6]+=(0x9b05688cU^(Vals[3]&0xca0b3af3U));
@@ -684,7 +684,7 @@ Vals[6]+=(rotr(Vals[7],2)^rotr(Vals[7],13)^rotr(Vals[7],22));
W[5]=state5;
W[5]+=Vals[5];
-Vals[5]=0x150C6645B;
+Vals[5]=0x150C6645BU;
Vals[5]+=(rotr(Vals[2],6)^rotr(Vals[2],11)^rotr(Vals[2],25));
Vals[5]+=ch(Vals[2],Vals[3],0x510e527fU);
Vals[5]+=W[2];
@@ -697,7 +697,7 @@ Vals[5]+=(rotr(Vals[6],2)^rotr(Vals[6],13)^rotr(Vals[6],22));
W[4]=state4;
W[4]+=Vals[4];
-Vals[4]=0x13AC42E24;
+Vals[4]=0x13AC42E24U;
Vals[4]+=(rotr(Vals[1],6)^rotr(Vals[1],11)^rotr(Vals[1],25));
Vals[4]+=ch(Vals[1],Vals[2],Vals[3]);
Vals[4]+=W[3];
@@ -736,7 +736,7 @@ Vals[4]+=Vals[0];
Vals[0]+=(rotr(Vals[1],2)^rotr(Vals[1],13)^rotr(Vals[1],22));
Vals[7]+=(rotr(Vals[4],6)^rotr(Vals[4],11)^rotr(Vals[4],25));
Vals[7]+=ch(Vals[4],Vals[5],Vals[6]);
-Vals[7]+=0x15807AA98;
+Vals[7]+=0x15807AA98U;
Vals[0]+=Ma(Vals[3],Vals[1],Vals[2]);
Vals[3]+=Vals[7];
Vals[7]+=(rotr(Vals[0],2)^rotr(Vals[0],13)^rotr(Vals[0],22));
@@ -779,7 +779,7 @@ Vals[1]+=(rotr(Vals[2],2)^rotr(Vals[2],13)^rotr(Vals[2],22));
Vals[1]+=Ma(Vals[4],Vals[2],Vals[3]);
Vals[0]+=(rotr(Vals[5],6)^rotr(Vals[5],11)^rotr(Vals[5],25));
Vals[0]+=ch(Vals[5],Vals[6],Vals[7]);
-Vals[0]+=0xC19BF274;
+Vals[0]+=0xC19BF274U;
Vals[4]+=Vals[0];
Vals[0]+=(rotr(Vals[1],2)^rotr(Vals[1],13)^rotr(Vals[1],22));
Vals[7]+=(rotr(Vals[4],6)^rotr(Vals[4],11)^rotr(Vals[4],25));
@@ -856,7 +856,7 @@ Vals[0]+=W[7];
Vals[4]+=Vals[0];
Vals[0]+=(rotr(Vals[1],2)^rotr(Vals[1],13)^rotr(Vals[1],22));
-W[8]=0x80000000;
+W[8]=0x80000000U;
W[8]+=W[1];
W[8]+=(rotr(W[6],17)^rotr(W[6],19)^(W[6]>>10U));
Vals[7]+=W[8];
@@ -1256,31 +1256,31 @@ Vals[7]+=ch(Vals[0],Vals[1],Vals[2]);
#define NFLAG (0x7F)
#if defined(VECTORS4)
- bool result = any(Vals[7] == 0x136032ed);
+ bool result = any(Vals[7] == 0x136032edU);
if (result) {
output[FOUND] = FOUND;
- if (Vals[7].x == 0x136032ed)
+ if (Vals[7].x == 0x136032edU)
output[NFLAG & nonce.x] = nonce.x;
- if (Vals[7].y == 0x136032ed)
+ if (Vals[7].y == 0x136032edU)
output[NFLAG & nonce.y] = nonce.y;
- if (Vals[7].z == 0x136032ed)
+ if (Vals[7].z == 0x136032edU)
output[NFLAG & nonce.z] = nonce.z;
- if (Vals[7].w == 0x136032ed)
+ if (Vals[7].w == 0x136032edU)
output[NFLAG & nonce.w] = nonce.w;
}
#elif defined(VECTORS2)
- bool result = any(Vals[7] == 0x136032ed);
+ bool result = any(Vals[7] == 0x136032edU);
if (result) {
output[FOUND] = FOUND;
- if (Vals[7].x == 0x136032ed)
+ if (Vals[7].x == 0x136032edU)
output[NFLAG & nonce.x] = nonce.x;
- if (Vals[7].y == 0x136032ed)
+ if (Vals[7].y == 0x136032edU)
output[NFLAG & nonce.y] = nonce.y;
}
#else
- if (Vals[7] == 0x136032ED)
+ if (Vals[7] == 0x136032EDU)
output[FOUND] = output[NFLAG & nonce] = nonce;
#endif
}