Bladeren bron

added rcsid
removed sign extension bug in large constants

sater 40 jaren geleden
bovenliggende
commit
c9df828837
1 gewijzigde bestanden met toevoegingen van 5 en 1 verwijderingen
  1. 5 1
      mach/proto/cg/compute.c

+ 5 - 1
mach/proto/cg/compute.c

@@ -1,3 +1,7 @@
+#ifndef NORCSID
+static char rcsid[] = "$Header$";
+#endif
+
 #include "assert.h"
 #include "param.h"
 #include "tables.h"
@@ -157,7 +161,7 @@ result_t compute(node) node_p node; {
 		return(dollar[node->ex_lnode-1]);
 	case EX_CON:
 		result.e_typ = EV_INT;
-		result.e_v.e_con = ((long) node->ex_rnode << 16) | node->ex_lnode;
+		result.e_v.e_con = ((long) node->ex_rnode << 16) | ((long)node->ex_lnode&0xffff);
 		return(result);
 	case EX_REG:
 		result.e_typ = EV_REG;