diff --git a/mach/i80/ncg/table b/mach/i80/ncg/table index b9a2b49dc..bfc21334d 100644 --- a/mach/i80/ncg/table +++ b/mach/i80/ncg/table @@ -1687,7 +1687,7 @@ pat cmu zlt $1==2 uses areg gen mov a, %2.2 - sbi {const1, %1.num & 0xff} + sui {const1, %1.num & 0xff} mov a, %2.1 sbi {const1, %1.num >> 8} jc {label, $2} @@ -1719,7 +1719,7 @@ pat cmu zge $1==2 uses areg gen mov a, %2.2 - sbi {const1, %1.num & 0xff} + sui {const1, %1.num & 0xff} mov a, %2.1 sbi {const1, %1.num >> 8} jnc {label, $2} diff --git a/tests/plat/core/cmu_e.e b/tests/plat/core/cmu_e.e index 62b83d798..addb8e7e7 100644 --- a/tests/plat/core/cmu_e.e +++ b/tests/plat/core/cmu_e.e @@ -16,6 +16,8 @@ zero rom 0 one rom 1 +twofivesix + rom 256 big #if EM_WSIZE == 2 rom 32767 @@ -107,5 +109,18 @@ big asp EM_WSIZE 7 + /* Test case: twofixsix < 256 */ + + loe twofivesix + loc 256 + cmu EM_WSIZE + zlt *8 + bra *9 +8 + loc __LINE__ + cal $fail + asp EM_WSIZE +9 + cal $finished end