Bug 1549667 - [mips] Fix unaligned load with sign/zero extend. r=lth

Reviewers: jandem, lth

Reviewed By: lth

Subscribers: jandem

Bug #: 1549667

Differential Revision: https://phabricator.services.mozilla.com/D30337

--HG--
extra : rebase_source : 1180d03984603a0498ad2f9f3dda8d907be85f6f
extra : histedit_source : 3dfd9666c1d43f521a1a147a6cfa60c23ec3b54e
This commit is contained in:
Yu Yin 2019-05-10 10:07:37 +03:00
Родитель 0031f427be
Коммит c099ddd8e0
1 изменённых файлов: 2 добавлений и 2 удалений

Просмотреть файл

@ -496,7 +496,7 @@ void MacroAssemblerMIPSShared::ma_load_unaligned(
BufferOffset load; BufferOffset load;
switch (size) { switch (size) {
case SizeHalfWord: case SizeHalfWord:
if (extension != ZeroExtend) { if (extension == ZeroExtend) {
load = as_lbu(temp, base, hiOffset); load = as_lbu(temp, base, hiOffset);
} else { } else {
load = as_lb(temp, base, hiOffset); load = as_lb(temp, base, hiOffset);
@ -508,7 +508,7 @@ void MacroAssemblerMIPSShared::ma_load_unaligned(
load = as_lwl(dest, base, hiOffset); load = as_lwl(dest, base, hiOffset);
as_lwr(dest, base, lowOffset); as_lwr(dest, base, lowOffset);
#ifdef JS_CODEGEN_MIPS64 #ifdef JS_CODEGEN_MIPS64
if (extension != ZeroExtend) { if (extension == ZeroExtend) {
as_dext(dest, dest, 0, 32); as_dext(dest, dest, 0, 32);
} }
#endif #endif