-
Notifications
You must be signed in to change notification settings - Fork 20
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
Fixes next vitis #191
Fixes next vitis #191
Conversation
I guess you need to rebase it on latest |
here is the clean rebase |
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.
You should clarify some points.
llvm/lib/SYCL/LowerSYCLMetaData.cpp
Outdated
@@ -282,6 +287,7 @@ struct LSMDState { | |||
std::vector<Value *> Args; | |||
for (auto &A : F->args()) | |||
Args.push_back(&A); | |||
std::ignore = std::initializer_list<int>{(Args.push_back(ts), 0)...}; |
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.
Why do you need this here but not on the previous line too?
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.
Why would I need what on the previous line ?
@@ -0,0 +1,20 @@ | |||
//==--------- xrt_alloc.hpp - SYCL XRT Allocator ---------------------------==// | |||
// |
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.
Explain somewhere why you need this.
@@ -9,6 +9,8 @@ | |||
#include <sycl/sycl.hpp> | |||
#include <sycl/ext/intel/fpga_extensions.hpp> | |||
|
|||
using namespace sycl; |
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 think you should not need this.
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.
This is the way it is for most tests.
@@ -174,6 +174,10 @@ static cl::opt<unsigned> | |||
cl::desc("Default threshold (max size of unrolled " | |||
"loop), used in all but O3 optimizations")); | |||
|
|||
static cl::opt<bool> UnrollOnlyWhenForced( | |||
"unroll-only-when-forced", cl::Hidden, | |||
cl::desc("Allow the loop remainder to be unrolled.")); |
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.
Explain the rationale
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.
Hope the updated description helps
2edfc9f
to
6fad234
Compare
The review has not yet been addressed. |
add the sources for a utility that fixes xsim issues if needed by the users.
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 added a commit to deal with terminate_xsim
llvm/lib/SYCL/LowerSYCLMetaData.cpp
Outdated
@@ -282,6 +287,7 @@ struct LSMDState { | |||
std::vector<Value *> Args; | |||
for (auto &A : F->args()) | |||
Args.push_back(&A); | |||
std::ignore = std::initializer_list<int>{(Args.push_back(ts), 0)...}; |
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.
Why would I need what on the previous line ?
@@ -174,6 +174,10 @@ static cl::opt<unsigned> | |||
cl::desc("Default threshold (max size of unrolled " | |||
"loop), used in all but O3 optimizations")); | |||
|
|||
static cl::opt<bool> UnrollOnlyWhenForced( | |||
"unroll-only-when-forced", cl::Hidden, | |||
cl::desc("Allow the loop remainder to be unrolled.")); |
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.
Hope the updated description helps
@@ -1005,6 +1005,9 @@ static bool UpgradeIntrinsicFunction1(Function *F, Function *&NewFn) { | |||
return true; | |||
} | |||
|
|||
if (F->getIntrinsicID() == Intrinsic::not_intrinsic) |
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.
Why it was not the case before?
- Comment.
@@ -282,6 +287,7 @@ struct LSMDState { | |||
std::vector<Value *> Args; | |||
for (auto &A : F->args()) | |||
Args.push_back(&A); | |||
(void)std::initializer_list<int>{(Args.push_back(ts), 0)...}; |
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.
No more std::ignore =
?
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 prefer (void)
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.
There are still some unanswered comments.
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.
Almost there!
Co-authored-by: Ronan Keryell <[email protected]>
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.
Thanks!
This patch fixes some of the issues under the next version of vitis. also adds xrt_alloc which should be used when using xrt directly or not.