another both sides functions

SVN=125230
diff --git a/src/cmd/6g/cgen.c b/src/cmd/6g/cgen.c
index c0e6853..b8c49b4 100644
--- a/src/cmd/6g/cgen.c
+++ b/src/cmd/6g/cgen.c
@@ -29,8 +29,10 @@
 		if(n->op == OINDREG)
 			fatal("cgen: this is going to misscompile");
 		if(res->ullman >= UINF) {
-			dump("fncalls", n);
-			fatal("cgen: node and result functions");
+			tempname(&n1, n->type);
+			cgen(n, &n1);
+			cgen(&n1, res);
+			goto ret;
 		}
 	}
 
@@ -45,7 +47,7 @@
 			cgen(n, &n1);
 			cgen(&n1, res);
 			regfree(&n1);
-			return;
+			goto ret;
 		}
 
 		igen(res, &n1, N);