aboutsummaryrefslogtreecommitdiff
path: root/src/parseTools.js
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2013-01-14 19:04:29 -0800
committerAlon Zakai <alonzakai@gmail.com>2013-01-14 19:04:29 -0800
commit581ef0e9afeace84c7ffb7605249973d1de0750e (patch)
treee2e707139ef40fa2eb4d3aacaac56a357bb711b5 /src/parseTools.js
parent45e9f31eae4f754ebaf1af11a2bf2f34226102c6 (diff)
add |0 to ne, eq icmps
Diffstat (limited to 'src/parseTools.js')
-rw-r--r--src/parseTools.js4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/parseTools.js b/src/parseTools.js
index 82ae02ce..268d0e24 100644
--- a/src/parseTools.js
+++ b/src/parseTools.js
@@ -1961,8 +1961,8 @@ function processMathop(item) {
'(' + low1 + '>>>0) < (' + low2 + '>>>0))))';
case 'slt': return '((' + high1 + '|0) < (' + high2 + '|0)) | ((((' + high1 + '|0) == (' + high2 + '|0) & ' +
'(' + low1 + '>>>0) < (' + low2 + '>>>0))))';
- case 'ne': return '(' + low1 + ' != ' + low2 + ') | (' + high1 + ' != ' + high2 + ')';
- case 'eq': return '(' + low1 + ' == ' + low2 + ') & (' + high1 + ' == ' + high2 + ')';
+ case 'ne': return '((' + low1 + '|0) != (' + low2 + '|0)) | ((' + high1 + '|0) != (' + high2 + '|0))';
+ case 'eq': return '((' + low1 + '|0) == (' + low2 + '|0)) & ((' + high1 + '|0) == (' + high2 + '|0))';
default: throw 'Unknown icmp variant: ' + variant;
}
}