From 900e97903505f9a0f2eb69af06468bb9d915771c Mon Sep 17 00:00:00 2001 From: kaashoek Date: Thu, 26 Nov 1987 12:14:32 +0000 Subject: [PATCH] *** empty log message *** --- util/ceg/assemble/as_assemble/assemble.c | 11 ++++++++++- util/ceg/assemble/as_assemble/block_as.c | 6 ++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/util/ceg/assemble/as_assemble/assemble.c b/util/ceg/assemble/as_assemble/assemble.c index 1a7500fc4..de40e1376 100644 --- a/util/ceg/assemble/as_assemble/assemble.c +++ b/util/ceg/assemble/as_assemble/assemble.c @@ -3,9 +3,18 @@ #include "em_decl.h" #include "as.h" +/* This file contains the assemble routine that generates assembly code. + * As 'str' is in assembly format this is a easy job. Only operands + * with "$n" in it need some special treatment. + * Note : a '$' is qouted by prefixing it with a '$'. + */ assemble( str) char *str; + +/* Output assembly instruction. Substitute for '$n' the name of the + * the n-th argument of the current EM-instruction. + */ { char buf[512] , *b_ptr, *arg_format(); int nr; @@ -20,7 +29,7 @@ char *str; *b_ptr++ = '$'; str = str + 2; } - else { + else { nr = atoi( str+1) - 1; *b_ptr = '\0'; out( "%s%s\", %s);", buf, diff --git a/util/ceg/assemble/as_assemble/block_as.c b/util/ceg/assemble/as_assemble/block_as.c index 2b93b4d36..ea625ff56 100644 --- a/util/ceg/assemble/as_assemble/block_as.c +++ b/util/ceg/assemble/as_assemble/block_as.c @@ -1,4 +1,10 @@ block_assemble( instructions, nr, first, last) + +/* Assemble a block of assembly instructions. If the table writer wants to + * combine assembly instructions he must rewrite this routine to fulfill his + * own needs. + */ + char **instructions; int nr, first, last; {