@@ -235,13 +235,6 @@ void FpySequencer::directive_peek_internalInterfaceHandler(const Svc::FpySequenc
235235 handleDirectiveErrorCode (Fpy::DirectiveId::PEEK, error);
236236}
237237
238- // ! Internal interface handler for directive_assert
239- void FpySequencer::directive_assert_internalInterfaceHandler (const Svc::FpySequencer_AssertDirective& directive) {
240- DirectiveError error = DirectiveError::NO_ERROR;
241- this ->sendSignal (this ->assert_directiveHandler (directive, error));
242- handleDirectiveErrorCode (Fpy::DirectiveId::ASSERT, error);
243- }
244-
245238// ! Internal interface handler for directive_store
246239void FpySequencer::directive_store_internalInterfaceHandler (const Svc::FpySequencer_StoreDirective& directive) {
247240 DirectiveError error = DirectiveError::NO_ERROR;
@@ -622,7 +615,7 @@ DirectiveError FpySequencer::op_uitofp() {
622615 this ->m_runtime .stack .push (static_cast <F64>(this ->m_runtime .stack .pop <U64>()));
623616 return DirectiveError::NO_ERROR;
624617}
625- DirectiveError FpySequencer::op_iadd () {
618+ DirectiveError FpySequencer::op_add () {
626619 if (this ->m_runtime .stack .size < sizeof (I64) * 2 ) {
627620 return DirectiveError::STACK_ACCESS_OUT_OF_BOUNDS;
628621 }
@@ -642,7 +635,7 @@ DirectiveError FpySequencer::op_iadd() {
642635 this ->m_runtime .stack .push (static_cast <I64>(lhs + rhs));
643636 return DirectiveError::NO_ERROR;
644637}
645- DirectiveError FpySequencer::op_isub () {
638+ DirectiveError FpySequencer::op_sub () {
646639 if (this ->m_runtime .stack .size < sizeof (I64) * 2 ) {
647640 return DirectiveError::STACK_ACCESS_OUT_OF_BOUNDS;
648641 }
@@ -664,7 +657,7 @@ DirectiveError FpySequencer::op_isub() {
664657 this ->m_runtime .stack .push (static_cast <I64>(lhs - rhs));
665658 return DirectiveError::NO_ERROR;
666659}
667- DirectiveError FpySequencer::op_imul () {
660+ DirectiveError FpySequencer::op_mul () {
668661 if (this ->m_runtime .stack .size < sizeof (I64) * 2 ) {
669662 return DirectiveError::STACK_ACCESS_OUT_OF_BOUNDS;
670663 }
@@ -789,15 +782,6 @@ DirectiveError FpySequencer::op_fdiv() {
789782 this ->m_runtime .stack .push (static_cast <F64>(lhs / rhs));
790783 return DirectiveError::NO_ERROR;
791784}
792- DirectiveError FpySequencer::op_float_floor_div () {
793- if (this ->m_runtime .stack .size < sizeof (F64) * 2 ) {
794- return DirectiveError::STACK_ACCESS_OUT_OF_BOUNDS;
795- }
796- F64 rhs = this ->m_runtime .stack .pop <F64>();
797- F64 lhs = this ->m_runtime .stack .pop <F64>();
798- this ->m_runtime .stack .push (static_cast <F64>(floor (lhs / rhs)));
799- return DirectiveError::NO_ERROR;
800- }
801785DirectiveError FpySequencer::op_fpow () {
802786 if (this ->m_runtime .stack .size < sizeof (F64) * 2 ) {
803787 return DirectiveError::STACK_ACCESS_OUT_OF_BOUNDS;
@@ -983,14 +967,14 @@ Signal FpySequencer::stackOp_directiveHandler(const FpySequencer_StackOpDirectiv
983967 case Fpy::DirectiveId::UITOFP:
984968 error = this ->op_uitofp ();
985969 break ;
986- case Fpy::DirectiveId::IADD :
987- error = this ->op_iadd ();
970+ case Fpy::DirectiveId::ADD :
971+ error = this ->op_add ();
988972 break ;
989- case Fpy::DirectiveId::ISUB :
990- error = this ->op_isub ();
973+ case Fpy::DirectiveId::SUB :
974+ error = this ->op_sub ();
991975 break ;
992- case Fpy::DirectiveId::IMUL :
993- error = this ->op_imul ();
976+ case Fpy::DirectiveId::MUL :
977+ error = this ->op_mul ();
994978 break ;
995979 case Fpy::DirectiveId::UDIV:
996980 error = this ->op_udiv ();
@@ -1016,9 +1000,6 @@ Signal FpySequencer::stackOp_directiveHandler(const FpySequencer_StackOpDirectiv
10161000 case Fpy::DirectiveId::FDIV:
10171001 error = this ->op_fdiv ();
10181002 break ;
1019- case Fpy::DirectiveId::FLOAT_FLOOR_DIV:
1020- error = this ->op_float_floor_div ();
1021- break ;
10221003 case Fpy::DirectiveId::FPOW:
10231004 error = this ->op_fpow ();
10241005 break ;
@@ -1321,26 +1302,6 @@ Signal FpySequencer::peek_directiveHandler(const FpySequencer_PeekDirective& dir
13211302 return Signal::stmtResponse_success;
13221303}
13231304
1324- Signal FpySequencer::assert_directiveHandler (const FpySequencer_AssertDirective& directive, DirectiveError& error) {
1325- if (this ->m_runtime .stack .size < sizeof (U8) * 2 ) {
1326- error = DirectiveError::STACK_ACCESS_OUT_OF_BOUNDS;
1327- return Signal::stmtResponse_failure;
1328- }
1329- U8 errorCode = this ->m_runtime .stack .pop <U8>();
1330- U8 condition = this ->m_runtime .stack .pop <U8>();
1331-
1332- if (condition != 0 ) {
1333- // proceed to next instruction
1334- return Signal::stmtResponse_success;
1335- }
1336-
1337- // otherwise, kill the sequence here
1338- // raise the user defined error code as an event
1339- this ->log_WARNING_HI_SequenceAsserted (this ->m_sequenceFilePath , errorCode);
1340- error = DirectiveError::ASSERTION_FAILURE;
1341- return Signal::stmtResponse_failure;
1342- }
1343-
13441305Signal FpySequencer::store_directiveHandler (const FpySequencer_StoreDirective& directive, DirectiveError& error) {
13451306 if (this ->m_runtime .stack .size < directive.get_size () + sizeof (Fpy::StackSizeType)) {
13461307 // not enough bytes to pop the value and the stack offset
0 commit comments