triton-git: update and build against LLVM-20
This commit is contained in:
parent
0199b5c5e3
commit
a0174cc7ad
@ -1,44 +0,0 @@
|
||||
--- triton/src/libtriton/includes/triton/tritonToLLVM.hpp.orig 2023-12-18 10:10:45.627931500 +0300
|
||||
+++ triton/src/libtriton/includes/triton/tritonToLLVM.hpp 2023-12-18 10:10:50.668006900 +0300
|
||||
@@ -19,9 +19,10 @@
|
||||
|
||||
#include <llvm/IR/IRBuilder.h>
|
||||
#include <llvm/IR/LLVMContext.h>
|
||||
-#include <llvm/IR/LegacyPassManager.h>
|
||||
#include <llvm/IR/Module.h>
|
||||
-#include <llvm/Transforms/IPO/PassManagerBuilder.h>
|
||||
+#include <llvm-c/TargetMachine.h>
|
||||
+#include <llvm-c/Transforms/PassBuilder.h>
|
||||
+#include <llvm/Support/CBindingWrapping.h>
|
||||
|
||||
|
||||
|
||||
--- triton/src/libtriton/ast/llvm/tritonToLLVM.cpp.orig 2023-12-18 10:41:32.749828600 +0300
|
||||
+++ triton/src/libtriton/ast/llvm/tritonToLLVM.cpp 2023-12-19 10:50:25.693682600 +0300
|
||||
@@ -100,12 +100,20 @@
|
||||
|
||||
/* Apply LLVM optimizations (-03 -Oz) if enabled */
|
||||
if (optimize) {
|
||||
- llvm::legacy::PassManager pm;
|
||||
- llvm::PassManagerBuilder pmb;
|
||||
- pmb.OptLevel = 3;
|
||||
- pmb.SizeLevel = 2;
|
||||
- pmb.populateModulePassManager(pm);
|
||||
- pm.run(*this->llvmModule);
|
||||
+ LLVMTargetRef targ;
|
||||
+ char *err_message;
|
||||
+ if (LLVMGetTargetFromTriple(this->llvmModule->getTargetTriple().c_str(), &targ, &err_message)) {
|
||||
+ LLVMTargetMachineRef tm = LLVMCreateTargetMachine(targ, this->llvmModule->getTargetTriple().c_str(),
|
||||
+ "", "", LLVMCodeGenLevelAggressive,
|
||||
+ LLVMRelocDefault, LLVMCodeModelDefault);
|
||||
+
|
||||
+ if (tm) {
|
||||
+ LLVMPassBuilderOptionsRef opts = LLVMCreatePassBuilderOptions();
|
||||
+ LLVMRunPasses(wrap(this->llvmModule.get()), "default<O3>", tm, opts);
|
||||
+
|
||||
+ LLVMDisposeTargetMachine(tm);
|
||||
+ }
|
||||
+ }
|
||||
}
|
||||
|
||||
return this->llvmModule;
|
||||
@ -4,9 +4,9 @@ _realname=triton
|
||||
pkgbase=mingw-w64-${_realname}-git
|
||||
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}-git")
|
||||
_ver_base=0.9
|
||||
pkgver=0.9.r4256.b022f317
|
||||
_commit=b022f3179b3ff6fbafd597099ab0e2f5f07df23a
|
||||
pkgrel=2
|
||||
pkgver=0.9.r4320.34e1de35
|
||||
_commit=34e1de35869eb3d7e571f21e9c2561dff126e040
|
||||
pkgrel=1
|
||||
pkgdesc="Triton is a dynamic binary analysis library (mingw-w64)"
|
||||
arch=('any')
|
||||
mingw_arch=('mingw64' 'ucrt64' 'clang64' 'clangarm64')
|
||||
@ -25,17 +25,15 @@ depends=("${MINGW_PACKAGE_PREFIX}-cc-libs"
|
||||
makedepends=("${MINGW_PACKAGE_PREFIX}-cc"
|
||||
"${MINGW_PACKAGE_PREFIX}-cmake"
|
||||
"${MINGW_PACKAGE_PREFIX}-ninja"
|
||||
"${MINGW_PACKAGE_PREFIX}-llvm-16"
|
||||
"${MINGW_PACKAGE_PREFIX}-llvm-20"
|
||||
"${MINGW_PACKAGE_PREFIX}-boost"
|
||||
"${MINGW_PACKAGE_PREFIX}-libffi"
|
||||
"${MINGW_PACKAGE_PREFIX}-python-setuptools"
|
||||
"git")
|
||||
source=("${_realname}"::"git+https://github.com/JonathanSalwan/Triton.git#commit=$_commit"
|
||||
001-remove-legacy.patch
|
||||
002-cmake-install-dir.patch
|
||||
003-cmake-target-config.patch)
|
||||
sha256sums=('c2c5243454084ff80dd3f6840fb9e92f095635a882013017c3323cbd2dd8867d'
|
||||
'94100f4106c04360a2d45bbe34a79c8fb909182d5819f9aaa232b9a1ae3cf3d0'
|
||||
sha256sums=('83d18c072ac44b95d2e22b9a105489ee8c6e18a2c6f2fbeb8ce9b70b3d7c2c67'
|
||||
'b8da26b33d1cf3ff7d620987e45cbef2c32df0b68fe662b0779ffcc933b33ba9'
|
||||
'4282cdcc0ec16d1a07857855494ac2fb83b1bbc258323fe1c8b0da25b42c3985')
|
||||
|
||||
@ -46,7 +44,6 @@ pkgver() {
|
||||
|
||||
prepare() {
|
||||
cd "${srcdir}/Triton"
|
||||
patch -p1 -i "${srcdir}"/001-remove-legacy.patch
|
||||
patch -p1 -i "${srcdir}"/002-cmake-install-dir.patch
|
||||
patch -p1 -i "${srcdir}"/003-cmake-target-config.patch
|
||||
}
|
||||
@ -65,7 +62,7 @@ build() {
|
||||
"${MINGW_PREFIX}"/bin/cmake.exe \
|
||||
-GNinja \
|
||||
-DCMAKE_INSTALL_PREFIX="${MINGW_PREFIX}" \
|
||||
-DCMAKE_PREFIX_PATH=${MINGW_PREFIX}/opt/llvm-16 \
|
||||
-DCMAKE_PREFIX_PATH=${MINGW_PREFIX}/opt/llvm-20 \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
-DBOOST_INTERFACE=ON \
|
||||
-DLLVM_INTERFACE=ON \
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user