diff --git a/vvp/codes.h b/vvp/codes.h index 6e929e0bd..65b99184a 100644 --- a/vvp/codes.h +++ b/vvp/codes.h @@ -112,8 +112,8 @@ extern bool of_FLAG_SET_IMM(vthread_t thr, vvp_code_t code); extern bool of_FLAG_SET_VEC4(vthread_t thr, vvp_code_t code); extern bool of_FORCE_LINK(vthread_t thr, vvp_code_t code); extern bool of_FORCE_VEC4(vthread_t thr, vvp_code_t code); +extern bool of_FORCE_VEC4_OFF(vthread_t thr, vvp_code_t code); extern bool of_FORCE_WR(vthread_t thr, vvp_code_t code); -extern bool of_FORCE_X0(vthread_t thr, vvp_code_t code); extern bool of_FORK(vthread_t thr, vvp_code_t code); extern bool of_FREE(vthread_t thr, vvp_code_t code); extern bool of_INV(vthread_t thr, vvp_code_t code); diff --git a/vvp/compile.cc b/vvp/compile.cc index 7da402e23..737ac117e 100644 --- a/vvp/compile.cc +++ b/vvp/compile.cc @@ -159,10 +159,10 @@ static const struct opcode_table_s opcode_table[] = { { "%flag_get/vec4", of_FLAG_GET_VEC4, 1, {OA_NUMBER, OA_NONE, OA_NONE} }, { "%flag_set/imm", of_FLAG_SET_IMM, 2, {OA_NUMBER, OA_BIT1, OA_NONE} }, { "%flag_set/vec4", of_FLAG_SET_VEC4, 1, {OA_NUMBER, OA_NONE, OA_NONE} }, - { "%force/link",of_FORCE_LINK,2,{OA_FUNC_PTR, OA_FUNC_PTR2, OA_NONE} }, - { "%force/vec4",of_FORCE_VEC4,1,{OA_FUNC_PTR, OA_NONE, OA_NONE} }, - { "%force/wr", of_FORCE_WR, 1,{OA_FUNC_PTR, OA_NONE, OA_NONE} }, - { "%force/x0",of_FORCE_X0,3,{OA_FUNC_PTR, OA_BIT1, OA_BIT2} }, + { "%force/link", of_FORCE_LINK,2,{OA_FUNC_PTR, OA_FUNC_PTR2, OA_NONE} }, + { "%force/vec4", of_FORCE_VEC4, 1,{OA_FUNC_PTR, OA_NONE, OA_NONE} }, + { "%force/vec4/off",of_FORCE_VEC4_OFF,2,{OA_FUNC_PTR, OA_BIT1, OA_NONE} }, + { "%force/wr", of_FORCE_WR, 1,{OA_FUNC_PTR, OA_NONE, OA_NONE} }, { "%free", of_FREE, 1, {OA_VPI_PTR, OA_NONE, OA_NONE} }, { "%inv", of_INV, 0, {OA_NONE, OA_NONE, OA_NONE} }, { "%ix/add", of_IX_ADD, 3, {OA_NUMBER, OA_BIT1, OA_BIT2} }, diff --git a/vvp/opcodes.txt b/vvp/opcodes.txt index 3779dc1c7..ef3202425 100644 --- a/vvp/opcodes.txt +++ b/vvp/opcodes.txt @@ -556,27 +556,21 @@ These instructions provide a means for accessing flag bits. The stack, and the %flag_set/vec4 pops the top of the vec4 stack and writes the LSB to the selected flag. -* %force/v