shithub: scc

Download patch

ref: 580a13e36e24a600cea5207ecde9eebadf172eda
parent: 2d8f37202486a2322c4aa194e48facb531e1ffab
parent: 1378681f247192bd5180a2124517424d17527060
author: Roberto E. Vargas Caballero <[email protected]>
date: Fri Jun 3 08:55:57 EDT 2016

Merge remote-tracking branch 'origin/master'

--- a/cc2/arch/qbe/code.c
+++ b/cc2/arch/qbe/code.c
@@ -133,8 +133,8 @@
 	[ASCALLL] = {.fun = call, .letter = 'l'},
 	[ASCALLD] = {.fun = call, .letter = 'd'},
 	[ASCALL] = {.fun = ecall},
-	[ASPAR] = {.fun = param, .txt = "\t\t%s %s,\n"},
-	[ASPARE] = {.fun = param, .txt = "\t\t%s %s\n"},
+	[ASPAR] = {.fun = param, .txt = "%s %s, "},
+	[ASPARE] = {.fun = param, .txt = "%s %s"},
 };
 
 static char buff[ADDR_LEN];
@@ -417,7 +417,7 @@
 
        strcpy(to, addr2txt(&pc->to));
        strcpy(from, addr2txt(&pc->from1));
-       printf("\t%s =%c\tcall\t%s(\n", to, p->letter, from);
+       printf("\t%s =%c\tcall\t%s(", to, p->letter, from);
 }
 
 static void
@@ -432,7 +432,7 @@
 static void
 ecall(void)
 {
-	puts("\t\t)");
+	puts(")");
 }
 
 static void
--- a/driver/posix/scc.c
+++ b/driver/posix/scc.c
@@ -217,6 +217,8 @@
 	if (dot) {
 		if (!strcmp(dot, ".c"))
 			return CC1;
+		if (!strcmp(dot, ".ir"))
+			return CC2;
 		if (!strcmp(dot, ".qbe"))
 			return QBE;
 		if (!strcmp(dot, ".as"))