]> git.gag.com Git - fw/sdcc/commitdiff
Added regression tests for PIC Port.
authorsdattalo <sdattalo@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Tue, 30 Oct 2001 17:23:24 +0000 (17:23 +0000)
committersdattalo <sdattalo@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Tue, 30 Oct 2001 17:23:24 +0000 (17:23 +0000)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@1471 4a8a32a2-be11-0410-ad9d-d568d2c75423

src/regression/add4.c [new file with mode: 0644]
src/regression/compare6.c [new file with mode: 0644]

diff --git a/src/regression/add4.c b/src/regression/add4.c
new file mode 100644 (file)
index 0000000..ceb5160
--- /dev/null
@@ -0,0 +1,85 @@
+unsigned char success = 0;
+unsigned char failures = 0;
+unsigned char dummy = 0;
+
+//bit bit0 = 0;
+int int0 = 0;
+int int1 = 0;
+char char0 = 0;
+char char1 = 0;
+long long0 = 0;
+long long1 = 0;
+unsigned long ulong0 = 0;
+unsigned long ulong1 = 0;
+#define NULL 0
+char *cP0=NULL;
+char *cP1=NULL;
+int *iP0=NULL;
+int *iP1=NULL;
+
+void
+done ()
+{
+
+  dummy++;
+
+}
+
+
+/* pointer to char arithmetic */
+
+void pc_add(void)
+{
+
+  if(*cP1)
+    failures++;
+
+  *cP1 += 1;
+  if(*cP1 != 1)
+    failures++;
+
+  if(char0 != 1)
+    failures++;
+
+  char0++;
+
+  if(*cP1 != 2)
+    failures++;
+
+  char1 = char0 + *cP1;
+
+  if(char1 != 4)
+    failures++;
+}
+
+/* pointer to integer arithmetic */
+void pi_add(void)
+{
+  if(*iP0)
+    failures++;
+
+  *iP0 += 1;
+
+  if(*iP0 != 1)
+    failures++;
+
+  if(int0 != 1)
+    failures++;
+
+  int1 = int0 + *iP0;
+  if(int1 != 2)
+    failures++;
+}
+
+void main(void)
+{
+
+  cP1 = &char0;
+  pc_add();
+
+  iP0 = &int0;
+  pi_add();
+
+  success = failures;
+  done();
+}
diff --git a/src/regression/compare6.c b/src/regression/compare6.c
new file mode 100644 (file)
index 0000000..e5c8177
--- /dev/null
@@ -0,0 +1,165 @@
+// Compound comparisons
+
+unsigned char success = 0;
+unsigned char failures = 0;
+unsigned char dummy = 0;
+
+bit bit0 = 0;
+int int0 = 0;
+int int1 = 0;
+unsigned char uchar0 = 0;
+unsigned char uchar1 = 0;
+char char0 = 0;
+char char1 = 0;
+char long0 = 0;
+char long1 = 0;
+
+void
+done ()
+{
+  dummy++;
+}
+
+
+void c_char(void)
+{
+
+  if(char0 || char1)
+    failures++;
+
+  if(char0 && char1)
+    failures++;
+
+  if(char0 > char1)
+    failures++;
+
+  if((char0+1)  < char1)
+    failures++;
+
+  if((char0+5) >= (char1+9))
+    failures++;
+
+  char0++;
+
+  if(char0 && char1)
+    failures++;
+
+  if(char0 != (char1+1) )
+    failures++;
+
+  if(!char0)
+    failures++;
+
+  if(char1 || !char0)
+    failures++;
+
+  if((char0 >5 ) && (char0 < 10)) 
+    failures++;
+
+  char0 +=5; /* char0 = 6 now */
+
+
+  if(!((char0 >5 ) && (char0 < 10)))
+    failures++;
+
+}
+
+
+void c_int(void)
+{
+
+  if(int0 || int1)
+    failures++;
+
+  if(int0 && int1)
+    failures++;
+
+  if(int0 > int1)
+    failures++;
+
+  if((int0+1)  < int1)
+    failures++;
+
+  if((int0+5) >= (int1+9))
+    failures++;
+
+  int0++;
+
+  if(int0 && int1)
+    failures++;
+
+  if(int0 != (int1+1) )
+    failures++;
+
+  if(!int0)
+    failures++;
+
+  if(int1 || !int0)
+    failures++;
+
+  if((int0 >5 ) && (int0 < 10)) 
+    failures++;
+
+  int0 +=5; /* int0 = 6 now */
+
+
+  if(!((int0 >5 ) && (int0 < 10)))
+    failures++;
+
+}
+
+
+void c_long(void)
+{
+
+  if(long0 || long1)
+    failures++;
+
+  if(long0 && long1)
+    failures++;
+
+  if(long0 > long1)
+    failures++;
+
+  if((long0+1)  < long1)
+    failures++;
+
+  if((long0+5) >= (long1+9))
+    failures++;
+
+  long0++;
+
+  if(long0 && long1)
+    failures++;
+
+  if(long0 != (long1+1) )
+    failures++;
+
+  if(!long0)
+    failures++;
+
+  if(long1 || !long0)
+    failures++;
+
+  if((long0 >5 ) && (long0 < 10)) 
+    failures++;
+
+  long0 +=5; /* long0 = 6 now */
+
+
+  if(!((long0 >5 ) && (long0 < 10)))
+    failures++;
+
+}
+
+void
+main (void)
+{
+
+  c_char();
+  c_int();
+  c_long();
+
+  success = failures;
+  done ();
+}