aboutsummaryrefslogtreecommitdiff
path: root/src/parseTools.js
diff options
context:
space:
mode:
authorAlon Zakai <azakai@mozilla.com>2010-12-29 21:33:56 -0800
committerAlon Zakai <azakai@mozilla.com>2010-12-29 21:33:56 -0800
commit091b6d662ee1e80dedc7d779d2b892acc95f7837 (patch)
treef77c64f2aa041a8bba42163f056412fe24396a83 /src/parseTools.js
parent1b7500b59c2a087850f06d36e41b17fb58435e62 (diff)
better slab selection with type info
Diffstat (limited to 'src/parseTools.js')
-rw-r--r--src/parseTools.js11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/parseTools.js b/src/parseTools.js
index 1764773b..e9ca3e34 100644
--- a/src/parseTools.js
+++ b/src/parseTools.js
@@ -352,10 +352,17 @@ function parseLLVMFunctionCall(segment) {
segment.splice(2, 1); // Remove modifiers
if (!segment[2]) throw 'Invalid segment!';
}
+ var intertype = segment[1].text;
+ var type = segment[0].text;
+ if (type === '?') {
+ if (intertype === 'getelementptr') {
+ type = '*'; // a pointer, we can easily say, this is
+ }
+ }
var ret = {
- intertype: segment[1].text,
+ intertype: intertype,
variant: variant,
- type: segment[0].text,
+ type: type,
params: parseParamTokens(segment[2].item.tokens)
};
ret.ident = toNiceIdent(ret.params[0].ident);