LLVM getelementptr: получить значение из массива указателей - PullRequest
0 голосов
/ 01 декабря 2018

В настоящее время я работаю над проектом компиляции для перевода одного языка в LLVM IR.

Я пытаюсь передать массив в качестве параметра функции, поэтому я передаю массив в указатель.Но когда я пытаюсь впоследствии использовать getelementptr для этого указателя, он выдает «недопустимые индексы getelementptr».

%tmp21 is an i32* pointer to a static array
%tmp22 is an i32 constant.
%tmp21 = getelementptr inbounds i32*, i32** %t_5, i64 0, i32 %tmp22

Независимо от того, что я пытаюсь, он всегда выдает эту ошибку.

Любая идеяили руководство о том, как это исправить?

Заранее спасибо.

Небольшое замечание: К сожалению, я не могу установить LLVM IR SDK на мою IDE затмения ...

...