diff --git a/vvp/codes.h b/vvp/codes.h index 7dcd43021..166fb2d76 100644 --- a/vvp/codes.h +++ b/vvp/codes.h @@ -19,7 +19,7 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA */ #ifdef HAVE_CVS_IDENT -#ident "$Id: codes.h,v 1.52 2002/11/07 02:32:39 steve Exp $" +#ident "$Id: codes.h,v 1.53 2002/11/08 04:59:57 steve Exp $" #endif @@ -42,6 +42,7 @@ extern bool of_ANDR(vthread_t thr, vvp_code_t code); extern bool of_ASSIGN(vthread_t thr, vvp_code_t code); extern bool of_ASSIGN_D(vthread_t thr, vvp_code_t code); extern bool of_ASSIGN_MEM(vthread_t thr, vvp_code_t code); +extern bool of_ASSIGN_V0(vthread_t thr, vvp_code_t code); extern bool of_ASSIGN_X0(vthread_t thr, vvp_code_t code); extern bool of_BLEND(vthread_t thr, vvp_code_t code); extern bool of_BREAKPOINT(vthread_t thr, vvp_code_t code); @@ -159,6 +160,9 @@ extern vvp_code_t codespace_index(vvp_cpoint_t ptr); /* * $Log: codes.h,v $ + * Revision 1.53 2002/11/08 04:59:57 steve + * Add the %assign/v0 instruction. + * * Revision 1.52 2002/11/07 02:32:39 steve * Add vector set and load instructions. * diff --git a/vvp/compile.cc b/vvp/compile.cc index 2379bc376..ae28d13f0 100644 --- a/vvp/compile.cc +++ b/vvp/compile.cc @@ -17,7 +17,7 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA */ #ifdef HAVE_CVS_IDENT -#ident "$Id: compile.cc,v 1.144 2002/11/07 02:32:39 steve Exp $" +#ident "$Id: compile.cc,v 1.145 2002/11/08 04:59:58 steve Exp $" #endif # include "arith.h" @@ -87,8 +87,9 @@ const static struct opcode_table_s opcode_table[] = { { "%and", of_AND, 3, {OA_BIT1, OA_BIT2, OA_NUMBER} }, { "%and/r", of_ANDR, 3, {OA_BIT1, OA_BIT2, OA_NUMBER} }, { "%assign", of_ASSIGN, 3, {OA_FUNC_PTR, OA_BIT1, OA_BIT2} }, - { "%assign/d", of_ASSIGN_D, 3, {OA_FUNC_PTR, OA_BIT1, OA_BIT2} }, + { "%assign/d", of_ASSIGN_D, 3, {OA_FUNC_PTR, OA_BIT1, OA_BIT2} }, { "%assign/m",of_ASSIGN_MEM,3,{OA_MEM_PTR,OA_BIT1, OA_BIT2} }, + { "%assign/v0",of_ASSIGN_V0,3,{OA_FUNC_PTR,OA_BIT1, OA_BIT2} }, { "%assign/x0",of_ASSIGN_X0,3,{OA_FUNC_PTR,OA_BIT1, OA_BIT2} }, { "%blend", of_BLEND, 3, {OA_BIT1, OA_BIT2, OA_NUMBER} }, { "%breakpoint", of_BREAKPOINT, 0, {OA_NONE, OA_NONE, OA_NONE} }, @@ -1482,6 +1483,9 @@ void compile_net(char*label, char*name, int msb, int lsb, bool signed_flag, /* * $Log: compile.cc,v $ + * Revision 1.145 2002/11/08 04:59:58 steve + * Add the %assign/v0 instruction. + * * Revision 1.144 2002/11/07 02:32:39 steve * Add vector set and load instructions. * diff --git a/vvp/opcodes.txt b/vvp/opcodes.txt index aa64177c3..8c767dbb0 100644 --- a/vvp/opcodes.txt +++ b/vvp/opcodes.txt @@ -1,7 +1,7 @@ /* * Copyright (c) 2001 Stephen Williams (steve@icarus.com) * - * $Id: opcodes.txt,v 1.43 2002/11/07 02:32:39 steve Exp $ + * $Id: opcodes.txt,v 1.44 2002/11/08 04:59:58 steve Exp $ */ @@ -49,6 +49,7 @@ means the following: * %assign , , * %assign/d , , +* %assign/v0 , , This does a non-blocking assignment to a variable. The