diff options
Diffstat (limited to 'src/parseTools.js')
-rw-r--r-- | src/parseTools.js | 11 |
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); |