* Makefile.in, configure.in, configure,
[fw/sdcc] / src / regression / and1.c
index c566bd9ffd2d135fd28d4049c3d81f8580e529e0..bf9ecaed8ad1317ddc6a570280285419ba266731 100644 (file)
@@ -1,7 +1,6 @@
+#include "gpsim_assert.h"
 
-unsigned char success=0;
 unsigned char failures=0;
-unsigned char dummy=0;
 
 
 unsigned int uint0 = 0;
@@ -10,11 +9,11 @@ unsigned char uchar0 = 0;
 unsigned char uchar1 = 0;
 unsigned long ulong0 = 0;
 
-void done()
+void
+done()
 {
-
-  dummy++;
-
+  ASSERT(MANGLE(failures) == 0);
+  PASSED();
 }
 
 // uchar0 = 0xff;
@@ -104,6 +103,24 @@ void and_lit2ulong(void)
     failures++;
 }
 
+/*-----------*/
+void and_uchar2uchar(void)
+{
+
+  uchar0 &= uchar1;
+
+  if(uchar0 != 0x0f)
+    failures++;
+
+  uchar1 &= 0xf7;
+
+  uchar0 = uchar1 & 0xfe;
+
+  if(uchar0 != 0x06)
+    failures++;
+
+}
+
 void main(void)
 {
 
@@ -116,6 +133,9 @@ void main(void)
   ulong0 = 0xffffffff;
   and_lit2ulong();
 
-  success = failures;
+  uchar0 = 0xff;
+  uchar1 = 0x0f;
+  and_uchar2uchar();
+
   done();
 }