Модуль ввода LLVM неисправен - PullRequest
0 голосов
/ 29 декабря 2018

Я занят тестированием компилятора Pascal LLMV: https://gitlab.com/mseide-msegui/mselang

Все прошло нормально, компилятор MSElang создает файл битового кода (helloworld.bc).

Но при попытке компиляцииэтот bc файл с opt есть это сообщение об ошибке после + - 900 строк сообщений компилятора opt.

/usr/bin/opt: /home/fred/mlctest/hellomlc.bc: error: input module is broken!

В чем проблема, у вас есть идея, что добавляет?

Ответы [ 2 ]

0 голосов
/ 04 января 2019

Ошибка, какой бы она ни была, обычно легко определяется путем вызова verifyFunction () и / или verifyModule () перед записью модуля.Эти функции сообщают подробности о действии.

VerifyModule () вызывает verifyFunction (), так что вам не нужно строго проверять functionFunction (), но вам может быть удобно вызывать verifyFunction (), как только вы сгенерируете функцию иутверждают, что он возвращает ложь.Таким образом, вы можете получить одно или несколько полезных сообщений вместо потока, который вы можете получить с помощью verifyModule ().

0 голосов
/ 30 декабря 2018

Re-hello.

Еще немного информации ...

Файл .bc (Bit-Code), созданный MSElang, отлично распознается lli (интерпретатором и динамическим компилятором llvm).

См. Рисунок: файл до н.э., интерпретируемый lli

Но я пытаюсь скомпилировать его с помощью этого:

llc /home/fred/mlctest/hellomlc.bc

есть чтосообщение об ошибке после множества сообщений:

llc: /home/fred/mlctest/hellomlc.bc: error: input module is broken!

Что не так?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...