mirror of
https://github.com/asmjit/asmjit.git
synced 2025-12-17 12:34:35 +03:00
[Bug] Fixed sign and zero extension in Function API (x86)
The problem was that the sign/zero extension was not working with TypeIds, but it was working with register IDs, when emitted. Thus, even when TypeId was uint8, for example, the register could be uint32, so the final instruction emitted was 'movzx eax, eax', for example, which was wrong.
This commit is contained in:
@@ -52,12 +52,14 @@ public:
|
||||
std::vector<std::unique_ptr<TestCase>> _tests;
|
||||
|
||||
const char* _arch = nullptr;
|
||||
const char* _filter = nullptr;
|
||||
bool _helpOnly = false;
|
||||
bool _verbose = false;
|
||||
bool _dumpAsm = false;
|
||||
bool _dumpHex = false;
|
||||
|
||||
unsigned _nFailed = 0;
|
||||
unsigned _numTests = 0;
|
||||
unsigned _numFailed = 0;
|
||||
size_t _outputSize = 0;
|
||||
|
||||
TestApp() noexcept
|
||||
@@ -73,6 +75,8 @@ public:
|
||||
|
||||
int handleArgs(int argc, const char* const* argv);
|
||||
void showInfo();
|
||||
|
||||
bool shouldRun(const TestCase* tc);
|
||||
int run();
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user