shithub: scc

Download patch

ref: 1f26fd0dd93bed2e76b19b73f40c59bae22be15c
parent: 7de77b9d418a975b358d701e26452c80819d6042
author: Roberto E. Vargas Caballero <[email protected]>
date: Sun Aug 10 19:13:17 EDT 2014

Add division operator in cc2

--- a/cc2/cc2.h
+++ b/cc2/cc2.h
@@ -70,6 +70,7 @@
 #define OASSIG    ':'
 #define OINC      ';'
 #define OMOD      '%'
+#define ODIV      '/'
 
 extern void error(unsigned nerror, ...);
 extern void genaddable(Node *list[]);
--- a/cc2/cgen.c
+++ b/cc2/cgen.c
@@ -125,7 +125,7 @@
 
 	switch (np->op) {
 	case OINC:
-	case OADD: case OASSIG: case OMOD:
+	case OADD: case OASSIG: case OMOD: case ODIV:
 		break;
 	default:
 		abort();
@@ -191,7 +191,7 @@
 		np->addable = 20;
 		break;
 	case OINC:
-	case OASSIG: case OADD: case OSUB: case OMOD:
+	case OASSIG: case OADD: case OSUB: case OMOD: case ODIV:
 		xaddable(lp);
 		xaddable(rp);
 		break;