Merge branch 'main' of https://git.sintekanalytics.com/SpiderLang/spider-runtime
This commit is contained in:
@@ -71,13 +71,13 @@ namespace spider {
|
|||||||
// TODO: Implement COM
|
// TODO: Implement COM
|
||||||
fetchOperDst();
|
fetchOperDst();
|
||||||
switch(_size){
|
switch(_size){
|
||||||
case 0b00:
|
case 0b00: //byte
|
||||||
_dst->_u8 = ~_dst->_u8;
|
_dst->_u8 = ~_dst->_u8;
|
||||||
case 0b01:
|
case 0b01: //short
|
||||||
_dst->_u16 = ~_dst->_u16;
|
_dst->_u16 = ~_dst->_u16;
|
||||||
case 0b10:
|
case 0b10: //int
|
||||||
_dst->_u32 = ~_dst->_u32;
|
_dst->_u32 = ~_dst->_u32;
|
||||||
case 0b11:
|
case 0b11: //long
|
||||||
_dst->_u64 = ~_dst->_u64;
|
_dst->_u64 = ~_dst->_u64;
|
||||||
}
|
}
|
||||||
(this->*_post)();
|
(this->*_post)();
|
||||||
@@ -87,13 +87,13 @@ namespace spider {
|
|||||||
// TODO: Implement NEG
|
// TODO: Implement NEG
|
||||||
fetchOperDst();
|
fetchOperDst();
|
||||||
switch(_size){
|
switch(_size){
|
||||||
case 0b00:
|
case 0b00: //byte
|
||||||
_dst->_u8 = 1 + ~_dst->_u8;
|
_dst->_u8 = 1 + ~_dst->_u8;
|
||||||
case 0b01:
|
case 0b01: //short
|
||||||
_dst->_u16 = 1+ ~_dst->_u16;
|
_dst->_u16 = 1+ ~_dst->_u16;
|
||||||
case 0b10:
|
case 0b10: //int
|
||||||
_dst->_u32 = 1 + ~_dst->_u32;
|
_dst->_u32 = 1 + ~_dst->_u32;
|
||||||
case 0b11:
|
case 0b11: //long
|
||||||
_dst->_u64 = 1 + ~_dst->_u64;
|
_dst->_u64 = 1 + ~_dst->_u64;
|
||||||
}
|
}
|
||||||
(this->*_post)();
|
(this->*_post)();
|
||||||
@@ -101,6 +101,19 @@ namespace spider {
|
|||||||
|
|
||||||
void CPU::EXS() {
|
void CPU::EXS() {
|
||||||
// TODO: Implement EXS
|
// TODO: Implement EXS
|
||||||
|
fetchOperDst();
|
||||||
|
switch(_size){
|
||||||
|
case 0b00: //byte
|
||||||
|
_dst->_u32 = _dst->_u8 & 1;
|
||||||
|
case 0b01: //short
|
||||||
|
_dst->_u32 = _dst->_u16 & 1;
|
||||||
|
case 0b10: //int
|
||||||
|
_dst->_u32 = _dst->_u32 & 1;
|
||||||
|
case 0b11: //long
|
||||||
|
_dst->_u32 = _dst->_u64 & 1;
|
||||||
|
}
|
||||||
|
_dst->_u32 = _dst->_u8;
|
||||||
|
(this->*_post)();
|
||||||
}
|
}
|
||||||
|
|
||||||
void CPU::INC() {
|
void CPU::INC() {
|
||||||
|
|||||||
Reference in New Issue
Block a user