stops jit block creation in case of ECALL and EBREAK

This commit is contained in:
2023-09-23 11:30:58 +02:00
parent 70839bbbf2
commit 417076f8e6
3 changed files with 117 additions and 119 deletions

View File

@ -2218,8 +2218,8 @@ private:
pc=pc+ 4;
this->gen_set_pc(pc, traits::NEXT_PC);
this->gen_raise_trap(0, 11);
bb = BasicBlock::Create(this->mod->getContext(), "entry", this->func, this->leave_blk);
auto returnValue = std::make_tuple(CONT,bb);
bb = this->leave_blk;
auto returnValue = std::make_tuple(TRAP,nullptr);
this->gen_trap_check(bb);
this->gen_sync(POST_SYNC, 38);
@ -2240,8 +2240,8 @@ private:
pc=pc+ 4;
this->gen_set_pc(pc, traits::NEXT_PC);
this->gen_raise_trap(0, 3);
bb = BasicBlock::Create(this->mod->getContext(), "entry", this->func, this->leave_blk);
auto returnValue = std::make_tuple(CONT,bb);
bb = this->leave_blk;
auto returnValue = std::make_tuple(TRAP,nullptr);
this->gen_trap_check(bb);
this->gen_sync(POST_SYNC, 39);
@ -2262,8 +2262,8 @@ private:
pc=pc+ 4;
this->gen_set_pc(pc, traits::NEXT_PC);
this->gen_leave_trap(3);
bb = BasicBlock::Create(this->mod->getContext(), "entry", this->func, this->leave_blk);
auto returnValue = std::make_tuple(CONT,bb);
bb = this->leave_blk;
auto returnValue = std::make_tuple(TRAP,nullptr);
this->gen_trap_check(bb);
this->gen_sync(POST_SYNC, 40);
@ -4282,8 +4282,8 @@ private:
pc=pc+ 2;
this->gen_set_pc(pc, traits::NEXT_PC);
this->gen_raise_trap(0, 3);
bb = BasicBlock::Create(this->mod->getContext(), "entry", this->func, this->leave_blk);
auto returnValue = std::make_tuple(CONT,bb);
bb = this->leave_blk;
auto returnValue = std::make_tuple(TRAP,nullptr);
this->gen_trap_check(bb);
this->gen_sync(POST_SYNC, 84);
@ -4351,8 +4351,8 @@ private:
pc=pc+ 2;
this->gen_set_pc(pc, traits::NEXT_PC);
this->gen_raise_trap(0, 2);
bb = BasicBlock::Create(this->mod->getContext(), "entry", this->func, this->leave_blk);
auto returnValue = std::make_tuple(CONT,bb);
bb = this->leave_blk;
auto returnValue = std::make_tuple(TRAP,nullptr);
this->gen_trap_check(bb);
this->gen_sync(POST_SYNC, 86);