strange difference between eccp and cparser
authorMichael Beck <beck@ipd.info.uni-karlsruhe.de>
Thu, 4 Sep 2008 10:32:17 +0000 (10:32 +0000)
committerMichael Beck <beck@ipd.info.uni-karlsruhe.de>
Thu, 4 Sep 2008 10:32:17 +0000 (10:32 +0000)
[r21692]

ir/be/test/fehler148.c [new file with mode: 0644]

diff --git a/ir/be/test/fehler148.c b/ir/be/test/fehler148.c
new file mode 100644 (file)
index 0000000..1dcdf10
--- /dev/null
@@ -0,0 +1,48 @@
+#define NE 6
+
+/* Number of 16 bit words in internal format */
+#define NI (NE+3)
+
+/* Array offset to exponent */
+#define E 1
+
+/* Array offset to high guard word */
+#define M 2
+
+
+static void
+eshdn1 (x)
+       register unsigned short *x;
+{
+       register unsigned short bits;
+       int i;
+
+       x += M;                       /* point to significand area */
+
+       bits = 0;
+       for (i = M; i < NI; i++)
+       {
+               if (*x & 1)
+                       bits |= 1;
+               *x >>= 1;
+               if (bits & 2)
+                       *x |= 0x8000;
+               bits <<= 1;
+               ++x;
+       }
+
+}
+
+static int
+edivm (den, num)
+            unsigned short den[], num[];
+{
+       eshdn1 (num);
+}
+
+int main(int argc, char *argv[]) {
+       unsigned short den[NI], num[NI];
+
+       edivm(den, num);
+       return 0;
+}