-
Notifications
You must be signed in to change notification settings - Fork 9
Add support for LLVM 19 and 20 (not CI tested) #13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: devel
Are you sure you want to change the base?
Add support for LLVM 19 and 20 (not CI tested) #13
Conversation
Interesting, my local GCC and Clang builds where happy. Good thing we have the CI! |
The last fixups re-add the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me.
It is a bit unlucky we have to resort to more and more version specific code.
But I think it is still to little to be a problem.
const auto& [has, data] = node->template checkAndGet<PiraOneData>(); | ||
if (has) { | ||
data->setNumberOfStatements(numStmts); | ||
data->setHasBody(hasBody); | ||
data->setDominantRuntime(dominantRuntime); | ||
data->setComesFromCube(inPrevProfile); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this a formatting error or correction?
MCGLogger::instance().getErrConsole()->warn("Could not create: {}, the Metadata is unknown in you application", | ||
s); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would prefer to have the error in one single line, instead of having only the formatting parameter in a new line.
MCGLogger::instance().getErrConsole()->warn("Could not create: {}, the Metadata is unknown in you application", | |
s); | |
MCGLogger::instance().getErrConsole()->warn( | |
"Could not create: {}, the Metadata is unknown in you application", s); |
Agreed! Also, that's what you need to do when you do not have a stable API. And I still prefer this over using the (more stable) C interface. If this increases more substantially, we should reflect on whether we care enough and if we want to add a wrapper layer. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please run a git-clang-format again
@@ -106,7 +106,7 @@ class CgNode { | |||
} | |||
|
|||
auto nmd = new T(args...); | |||
this->template addMetaData(nmd); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would think this is a change that is not related to the ability to use newer llvm versions. Am I missing something?
Will this break some GCC compatibility with older versions or so?
This patch adds support the newest version of LLVM. This is not tested in the CI yet and versions 19 and 20 are therefore not marked as supported.
Instead of giving an error, CMake now only prints a warning, if an unsupported version is detected.