LunarG / LunarGLASS

LLVM IR and optimizer for shaders, including front-end adapters for GLSL and SPIR-V and back-end adapter for GLSL
Other
170 stars 21 forks source link

Can you help me ? #66

Open SakuraXiaMF opened 5 years ago

SakuraXiaMF commented 5 years ago

Has anyone successfully installed this software except the developer? If so, can you please tell me the version of LLVM and glslang you installed? Thank you very much.

I tried to install it many times and every time I had various problems. The last time I installed, I used LLVM 3.4 and GLSLANG 5.0. I got the following errors:

/home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2007:40: error: ‘gla_fCeiling’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fCeiling; ^~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2010:40: error: ‘gla_fFraction’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fFraction; ^~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2013:40: error: ‘gla_fRadians’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fRadians; ^~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2016:40: error: ‘gla_fDegrees’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fDegrees; ^~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2019:40: error: ‘gla_fSin’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fSin; ^~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2022:40: error: ‘gla_fCos’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fCos; ^~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2025:40: error: ‘gla_fTan’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fTan; ^~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2028:40: error: ‘gla_fAsin’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fAsin; ^~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2031:40: error: ‘gla_fAcos’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fAcos; ^~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2034:40: error: ‘gla_fAtan’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fAtan; ^~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2037:40: error: ‘gla_fSinh’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fSinh; ^~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2040:40: error: ‘gla_fCosh’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fCosh; ^~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2043:40: error: ‘gla_fTanh’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fTanh; ^~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2046:40: error: ‘gla_fAsinh’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fAsinh; ^~~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2049:40: error: ‘gla_fAcosh’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fAcosh; ^~~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2052:40: error: ‘gla_fAtanh’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fAtanh; ^~~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2055:40: error: ‘gla_fAtan2’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fAtan2; ^~~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2059:44: error: ‘gla_fPow’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fPow; ^~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2061:44: error: ‘gla_fPowi’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fPowi; ^~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2064:40: error: ‘gla_fExp’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fExp; ^~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2067:40: error: ‘gla_fLog’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fLog; ^~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2070:40: error: ‘gla_fExp2’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fExp2; ^~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2073:40: error: ‘gla_fLog2’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fLog2; ^~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2076:40: error: ‘gla_fSqrt’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fSqrt; ^~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2079:40: error: ‘gla_fInverseSqrt’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fInverseSqrt; ^~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2090:94: error: ‘gla_fModF’ is not a member of ‘llvm::Intrinsic’ cture = glaBuilder->createIntrinsicCall(precision, llvm::Intrinsic::gla_fModF, operands.front()); ^~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2100:40: error: ‘gla_fMin’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fMin; ^~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2103:40: error: ‘gla_sMin’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_sMin; ^~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2106:40: error: ‘gla_uMin’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_uMin; ^~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2109:40: error: ‘gla_fMax’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fMax; ^~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2112:40: error: ‘gla_sMax’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_sMax; ^~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2115:40: error: ‘gla_uMax’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_uMax; ^~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2118:40: error: ‘gla_fClamp’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fClamp; ^~~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2121:40: error: ‘gla_sClamp’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_sClamp; ^~~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2124:40: error: ‘gla_uClamp’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_uClamp; ^~~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2127:40: error: ‘gla_fMix’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fMix; ^~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2133:40: error: ‘gla_fStep’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fStep; ^~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2136:40: error: ‘gla_fSmoothStep’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fSmoothStep; ^~~~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2169:40: error: ‘gla_fLength’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fLength; ^~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2172:40: error: ‘gla_fDistance’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fDistance; ^~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2175:40: error: ‘gla_fCross’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fCross; ^~~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2178:40: error: ‘gla_fNormalize’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fNormalize; ^~~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2181:40: error: ‘gla_fFaceForward’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fFaceForward; ^~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2184:40: error: ‘gla_fReflect’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fReflect; ^~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2187:40: error: ‘gla_fRefract’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fRefract; ^~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp: In member function ‘llvm::Value {anonymous}::SpvToTopTranslator::createUnaryOperation(spv::Op, gla::EMdPrecision, llvm::Type, llvm::Value, bool, bool)’: /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2265:40: error: ‘gla_any’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_any; ^~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2268:40: error: ‘gla_all’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_all; ^~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2297:40: error: ‘gla_fIsNan’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fIsNan; ^~~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2300:40: error: ‘gla_fIsInf’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fIsInf; ^~~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2305:40: error: ‘gla_fDFdx’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fDFdx; ^~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2308:40: error: ‘gla_fDFdy’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fDFdy; ^~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2311:40: error: ‘gla_fFilterWidth’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fFilterWidth; ^~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp: In member function ‘llvm::Value {anonymous}::SpvToTopTranslator::createBinaryOperation(spv::Op, gla::EMdPrecision, llvm::Value, llvm::Value, bool, bool, const char)’: /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2385:44: error: ‘gla_fDot2’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fDot2; ^~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2388:44: error: ‘gla_fDot3’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fDot3; ^~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2391:44: error: ‘gla_fDot4’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fDot4; ^~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp: In member function ‘llvm::Value {anonymous}::SpvToTopTranslator::createTextureQueryCall(spv::Op, spv::Id, spv::Id, int)’: /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2750:40: error: ‘gla_queryTextureSize’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_queryTextureSize; ^~~~~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2753:40: error: ‘gla_queryTextureSizeNoLod’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_queryTextureSizeNoLod; ^~~~~~~~~ /home/lijiatu/Documents/LunarGLASS/Frontends/SPIRV/SpvToTop.cpp:2756:40: error: ‘gla_fQueryTextureLod’ is not a member of ‘llvm::Intrinsic’ intrinsicID = llvm::Intrinsic::gla_fQueryTextureLod; ^~~~~~~~

johnkslang commented 4 years ago

Regardless of versioning, you need the instrinsics built correctly, and it looks like that did not happen. Can you verify you have the additional .td files and that they are being built?

As Greg mentioned, it is quite likely this project has not kept up with glslang changes, so there will also be an issue there. But, the above looks more fundamental, like the modifications to LLVM are not getting built and used.

SakuraXiaMF commented 4 years ago

Thank you very much!