diff options
| author | 2014-06-04 17:59:44 +0700 | |
|---|---|---|
| committer | 2014-06-11 14:54:42 -0700 | |
| commit | 5408b6ba5d73ac0890683ebd7ddb4151a8ac2721 (patch) | |
| tree | 2e394bacf2083a2c5d598211808a612efc44da8f /compiler/optimizing/optimizing_compiler.cc | |
| parent | 3283ade469f515f89d70cf47b6ac6fe1814147f2 (diff) | |
x86_64: Fix issue in JNI compiler
This patch fixed 64 bit conversion issue in Immediate.
The issue is inside type conversion of Immediate:
explicit Immediate(int64_t value) : value_(value) {}.
In case of the following example we'll have unexpected value in Immediate:
size_t t = 1;
Immediate(-t) will contain value 4294967295 because by conversion
rules -t is first transformed to unsigned and then transformed
to 64bit (size64_t). The issue can be fixed by using long value
as a parameter of Immediate constructor.
Added tests for BuildFrame, RemoveFrame, IncreaseFrameSize and
DecreaseFrameSize to assembler_x86_64_test.
Change-Id: I0652bac83e4266fd4153bc6a4e9d3aae7cc4cb6f
Signed-off-by: avignate <aleksey.v.ignatenko@intel.com>
Signed-off-by: Dmitry Petrochenko <dmitry.petrochenko@intel.com>
Diffstat (limited to 'compiler/optimizing/optimizing_compiler.cc')
0 files changed, 0 insertions, 0 deletions