64-bit fixes General 64-bit fixes and a hack for x86 to Sparc64 crosscompiling problem, where x86 misses 128-bit types. git-svn-id: svn://coreboot.org/openbios/openbios-devel@68 f158a5a8-5612-0410-a976-696ce0be7e32
diff --git a/kernel/forth.c b/kernel/forth.c index 5869a39..8fb2688 100644 --- a/kernel/forth.c +++ b/kernel/forth.c
@@ -330,8 +330,13 @@ { const ucell b = POP(); const ducell a = DPOP(); +#ifdef NEED_FAKE_INT128_T + fprintf(stderr, "mudivmode called\n"); + exit(-1); +#else PUSH(a % b); DPUSH(a / b); +#endif } @@ -475,7 +480,12 @@ { const dcell d2 = DPOP(); const dcell d1 = DPOP(); +#ifdef NEED_FAKE_INT128_T + fprintf(stderr, "dplus called\n"); + exit(-1); +#else DPUSH(d1 + d2); +#endif } @@ -487,7 +497,12 @@ { const dcell d2 = DPOP(); const dcell d1 = DPOP(); +#ifdef NEED_FAKE_INT128_T + fprintf(stderr, "dminus called\n"); + exit(-1); +#else DPUSH(d1 - d2); +#endif } @@ -499,7 +514,12 @@ { const cell u2 = POP(); const cell u1 = POP(); +#ifdef NEED_FAKE_INT128_T + fprintf(stderr, "mmult called\n"); + exit(-1); +#else DPUSH((dcell) u1 * u2); +#endif } @@ -511,7 +531,12 @@ { const ucell u2 = POP(); const ucell u1 = POP(); +#ifdef NEED_FAKE_INT128_T + fprintf(stderr, "ummult called\n"); + exit(-1); +#else DPUSH((ducell) u1 * u2); +#endif }