Je voudrais exécuter l'exemple RxCpp dans l'interpréteur IR de llvm lli
.Erreur llvm: La relocalisation n'est pas encore implémentée! lors de l'exécution de RxCpp dans orcjit ou lli
Malheureusement, la course l'un des exemples RxCpp échoue dans lli:
git clone https://github.com/Reactive-Extensions/RxCpp.git --depth 1
cd RxCpp/Rx/v2/examples/pythogerian
clang++ -S -emit-llvm -fno-use-cxa-exit -I../../src main.cpp
lli main.ll
-message d'erreur:
Relocation type not implemented yet!
UNREACHABLE executed at llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp:232!
Questions:
Qu'est-ce que cette erreur signifie exactement? - Quelles sont les suppositions faites dans le cadre de l'orc-jit de llvm qui ne sont pas satisfaites?
Y a-t-il une solution de contournement? - Y a-t-il des transformations LLVM-IR que je peux appliquer pour faire ce travail (par exemple via un compilateur-flag)?
Quelles sont les fonctionnalités spéciales utilisées par RxCpp qui causent ce problème dans l'orcjit de llvm?
testé sur:
clang version 5.0.0 (https://github.com/llvm-mirror/clang.git 6c9e299494de2a5b0425e46bc937f29a05128252)
clang version 4.0.0-+rc1-1 (tags/RELEASE_400/rc1)
clang version 3.9.0-1 (tags/RELEASE_390/final)
clang version 3.8.1-12 (tags/RELEASE_381/final)
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
vous pouvez mentionner la version clang que vous utilisez et la plate-forme sur laquelle vous vous trouvez. –