-#include <string.h>
-char *a = "bar";
+int precision = 7;
+long long r;
-volatile char buf[] = "Hello World";
+#define HOST_BITS_PER_WIDE_INT 64
+#define HOST_WIDE_INT long long
-long long l = -1614907703LL;
+long long x = 123;
+
+int dec(long long x){
+ return x - 1;
+}
int _start() {
- return l >= -64;
+ //long long r = (((HOST_WIDE_INT) 1 << (precision - 1)) - 1);
+ //long long r = ((HOST_WIDE_INT) 1 << (precision)) - 1;
+ long long r = x - 1;
+
+ //r = dec(x);
+ r >>= 32;
+
+ return r;
}
}
{
- /*long long ll = 0xdeadbeefdeadc0deLL;
- long l = 0xdeadbeef;
- unsigned char *tmp;
-
- printf("long long: %lld %llX\n",ll,ll);
- tmp = (char*)≪
- for(i=0;i<sizeof(long long);i++) { printf("%X\n",tmp[i]); }
-
- printf("long: %ld %lX\n",l,l);
- tmp = (char*)&l;
- for(i=0;i<sizeof(long);i++) { printf("%X\n",tmp[i]); }*/
-
- long long rl(long long n);
- long long l = rl(-1614907703);
- printf("---> %lld \n",l);
- if(l >=-64) printf("---> ERROR: %lld >= -64\n",l);
+
+#define HOST_BITS_PER_WIDE_INT 64
+#define HOST_WIDE_INT long long
+
+ extern int ri(int n);
+ int precision = ri(8);
+ long long l;
+
+ l = (precision - HOST_BITS_PER_WIDE_INT > 0
+ ? -1 : ((HOST_WIDE_INT) 1 << (precision - 1)) - 1),
+ (precision - HOST_BITS_PER_WIDE_INT - 1 > 0
+ ? (((HOST_WIDE_INT) 1
+ << (precision - HOST_BITS_PER_WIDE_INT - 1))) - 1
+ : 0);
+
+ printf("%llX\n",l);
}
//printf("cwd: %s\n",getcwd(NULL,0));
}
long long zero = 0;
+int izero = 0;
long long rl(long long n) { return n + zero; }
+int ri(int n) { return n + izero; }
void suckram() {
int total = 0;