On 05/31/2016 11:39 AM, Pranith Kumar wrote:
+ /* System instructions. */ + DMB_ISH = 0xd5033bbf,
...
+ case INDEX_op_mb: + tcg_out32(s, DMB_ISH); + break;
With the flags argument, this needs to be split.
DMB_ISH = 0xd5033b8f
DMB_RD = 0x00000010
DMB_WR = 0x00000020
if (a0 == TCG_MB_READ) {
a0 = DMB_RD;
} else if (a0 == TCG_MB_WRITE) {
a0 = DMB_WR;
} else {
a0 = DMB_RD | DMB_WR;
}
tcg_out32(s, DMB_ISH | a0);
r~
