Публикации по теме 'llvm'


LLForth - экспериментальная реализация Forth в LLVM
В качестве личного проекта я недавно написал процессор языка Forth, ориентированный на LLVM, и, наконец, опубликовал его исходный код - LLForth. В этом блоге я хотел бы вкратце рассказать, что это такое и почему / как я это сделал. riywo / llforth Экспериментальная реализация Forth в LLVM. Участвуйте в разработке riywo / llforth, создав учетную запись на GitHub. github.com Что такое LLForth? В нем есть два инструмента llforthc..

Вопросы по теме 'llvm'

LLVM - проблема со связью
Пишу генератор кода LLVM для языка Timber, текущий компилятор выдает C-код. Моя проблема в том, что мне нужно вызывать функции C из сгенерированных файлов LLVM, например, компилятор имеет сборщик мусора в реальном времени, и мне нужно вызывать...
5200 просмотров
schedule 06.12.2022

Дополнительная поддержка макросов в clang?
Поскольку LLVM/cLang особенно хорошо спроектирован. Это похоже на прекрасную возможность расширить систему макросов/препроцессоров C/C++. Кто-нибудь знает о дополнительные возможности макроса/препроцессора, добавленные Clang или побочные...
834 просмотров
schedule 15.02.2024

Изменение процесса компиляции с помощью SPEC для использования LLVM
В настоящее время я работаю над запуском некоторых проходов llvm и хотел бы оценить их полезность с помощью набора тестов процессора SPEC 2006. Однако я не понял, как изменить настройку SPEC, чтобы делать что-либо кроме использования llvm-gcc для...
1556 просмотров
schedule 17.11.2022

Использование libclang в качестве компилятора
Я работаю над инструментом, который генерирует код C из спецификации. Таким образом, пользователям необходимо самостоятельно скомпилировать сгенерированный код, прежде чем использовать скомпилированный код с другим инструментом. Я хотел бы...
3728 просмотров
schedule 17.12.2023

отключить оптимизацию clang, удалить инструкцию phi
1) Можно ли в clang отключить любую оптимизацию? 2) Есть ли способ удалить любую инструкцию phi из сгенерированного кода llvm? Я использую clang с параметрами: clang test.c -Wimplicit -emit-llvm -g -O0 -c -o result.bc А для некоторых исходных...
1646 просмотров
schedule 27.11.2022

Xcode force_load не работает для сборки симулятора
Я использую Xcode 4 и LLVM 2 для рабочей области, в которой есть два проекта (A и B). Основной проект (A) связывается с двоичным файлом другого проекта (B), который создает статическую библиотеку. Проект B содержит категории, поэтому, чтобы...
1486 просмотров
schedule 07.11.2022

установка привязки llvm в haskell
Пытаюсь установить привязки llvm, но выдает ошибку Resolving dependencies... [1 of 1] Compiling Main ( C:\TEMP\llvm-0.10.0.15520\llvm-0.10.0.1\Se tup.hs, C:\TEMP\llvm-0.10.0.15520\llvm-0.10.0.1\dist\setup\Main.o ) Linking...
744 просмотров
schedule 13.02.2024

LLVM отказывается компилировать исходный код C ++, странные ошибки
Я создал структуру, которая выполняет манипуляции с кешированными файлами для моего приложения. Я построил и протестировал его в отдельном проекте, прежде чем поместить его в свой текущий. С тех пор, как я его переместил, Xcode отказывается его...
778 просмотров
schedule 01.02.2024

Создание новых типов в LLVM (в частности указателя на тип функции)
Я хотел бы создать следующий Тип, void (i8*)* Я попытался использовать класс Type для создания указанного выше типа, но я не нашел прямого метода, позволяющего сделать то же самое. Кто-то, пожалуйста, предложите мне способ создания...
3612 просмотров
schedule 10.03.2024

Как включить ncurses при использовании Emscripten emcc и make на Mac
Я пытаюсь создать проект (а именно источник Angband - http://rephial.org/downloads/3.3/angband-v3.3.2.tar.gz ) с помощью emcc Emscripten, чтобы перенести его на Javascript и в конечном итоге создать онлайн-версию. Мне удалось начать процесс с...
1699 просмотров
schedule 06.12.2023

Как контролировать расположение глобальной переменной в LLVM IR?
Я пытаюсь модифицировать LLVM так, чтобы определенные константы и функции сохранялись в памяти смежными. Другими словами, мне нужно обеспечить, чтобы машинные коды для определенных функций всегда предварялись некоторым символом ~ 4-байтовая...
305 просмотров
schedule 16.03.2024

std::vector‹T› ошибка компиляции T не может появляться в константном выражении
Во-первых, мой код компилируется и отлично работает в Mac OS X с компилятором. i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 но на Ubuntu с компилятором g++ (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3 он не будет компилироваться. У меня в...
793 просмотров
schedule 03.11.2023

Что передать для аргумента vmap функции CloneFunction в llvm?
Я пытаюсь клонировать точную копию другой функции. Мне не удалось найти примеры использования CloneFunction в Интернете.
513 просмотров
schedule 03.01.2024

Вывод Clang ASM по сравнению с GCC
(Я пока почти ничего не знаю об ассемблере). Я пытаюсь следовать этому учебник. Проблема в том, что его компилятор и моя тестовая установка (gcc на 32-разрядной версии Linux) выдают совершенно другой и значительно меньший результат, чем моя...
5158 просмотров
schedule 27.09.2022

Использование ARC в LLVM без Obj-C
Можно ли использовать функцию ARC LLVM для подсчета ссылок для моего собственного языка, который я реализую (без использования Obj-C в качестве бэкэнда) Это было бы очень полезно, так как количество усилий для написания GC значительно сократилось бы.
790 просмотров
schedule 08.12.2022

dynamic_cast при сбое компилятора llvm clang
Я вижу странный сбой, когда dynamic_cast возвращает NULL на компиляторе clang. Но тот же код работает со средой gcc. Не могли бы вы указать мне, что может быть первопричиной? Какая может быть разница между dynamic_cast на llvm и gcc. Я...
1285 просмотров
schedule 31.10.2022

llvm получить номер строки глобального определения
Я следовал Как получить номер строки определения переменной и т. д., используя метаданные dbg? , чтобы получить определение номера строки для локальных переменных (allocas), что отлично работает. Но мне нужно то же самое для глобалов. Поэтому я...
492 просмотров
schedule 12.02.2024

Пытаясь понять байт-код C, может ли GNU/gcc создавать байт-код C, такой как Clang/LLVM?
Недавно мне сказали посмотреть, как функции C компилируются в байт-код LLVM, а затем как байт-код LLVM транслируется в x86 ASM. Как у обычного пользователя GNU/gcc, у меня есть несколько вопросов по этому поводу. Мягко говоря. GNU/gcc тоже...
1179 просмотров
schedule 05.12.2022

Как я могу использовать метод SplitEdge в llvm
Мне нужно вставить базовый блок в ребро. Я попытался использовать метод SplitEdge по следующей ссылке: http://llvm.org/docs/doxygen/html/BasicBlockUtils_8cpp_source.html Я нашел ответ здесь:...
279 просмотров
schedule 13.04.2024

как скомпилировать «функционал» в xcode 4.6.2 с включенным C++ 11
У нас есть файл .mm include ‹ functions> (стандартный заголовок), и он сообщает о следующей ошибке: In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/c++/v1/mutex:177:...
356 просмотров
schedule 26.04.2024