https://github.com/Meinersbur approved this pull request.
LGTM, great work!
https://github.com/llvm/llvm-project/pull/131985
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -44,23 +44,19 @@ MDNode *LoopInfo::createPipeliningMetadata(const
LoopAttributes &Attrs,
else if (Attrs.PipelineInitiationInterval != 0)
Enabled = true;
+ SmallVector Args;
+ Args.append(LoopProperties.begin(), LoopProperties.end());
+
if (Enabled != true) {
-
@@ -44,23 +44,19 @@ MDNode *LoopInfo::createPipeliningMetadata(const
LoopAttributes &Attrs,
else if (Attrs.PipelineInitiationInterval != 0)
Enabled = true;
+ SmallVector Args;
+ Args.append(LoopProperties.begin(), LoopProperties.end());
+
if (Enabled != true) {
-
@@ -170,11 +161,10 @@ LoopInfo::createUnrollAndJamMetadata(const LoopAttributes
&Attrs,
MDNode::get(Ctx, MDString::get(Ctx,
"llvm.loop.unroll_and_jam.disable")));
bool FollowupHasTransforms = false;
- MDNode *Followup = createPartialUnrollMetadata(Attrs, FollowupLoo
https://github.com/Meinersbur edited
https://github.com/llvm/llvm-project/pull/131985
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -227,36 +226,26 @@ void for_test_scalable_1(int *List, int Length) {
// CHECK: ![[LOOP_5]] = distinct !{![[LOOP_5]], ![[UNROLL_DISABLE:.*]],
![[DISTRIBUTE_DISABLE:.*]], ![[WIDTH_1:.*]]}
// CHECK: ![[WIDTH_1]] = !{!"llvm.loop.vectorize.width", i32 1}
-// CHECK: ![[LOOP_6]]
@@ -44,23 +44,19 @@ MDNode *LoopInfo::createPipeliningMetadata(const
LoopAttributes &Attrs,
else if (Attrs.PipelineInitiationInterval != 0)
Enabled = true;
+ SmallVector Args;
+ Args.append(LoopProperties.begin(), LoopProperties.end());
+
if (Enabled != true) {
-
https://github.com/Meinersbur edited
https://github.com/llvm/llvm-project/pull/131985
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -1345,7 +1345,16 @@ void tools::addFortranRuntimeLibs(const ToolChain &TC,
const ArgList &Args,
if (AsNeeded)
addAsNeededOption(TC, Args, CmdArgs, /*as_needed=*/false);
}
-CmdArgs.push_back("-lflang_rt.runtime");
+if (TC.getTriple().isOSAIX()) {
+
https://github.com/Meinersbur edited
https://github.com/llvm/llvm-project/pull/131332
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Meinersbur approved this pull request.
LGTM
https://github.com/llvm/llvm-project/pull/131332
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Meinersbur commented:
Approach look OK to me.
Could you add test(s) along the lines of
[aix-rlib.c](https://github.com/llvm/llvm-project/blob/main/clang/test/Driver/aix-rtlib.c).
If we make further changes, knowing what is expected on AIX/PPCLunux would be
very helpful.
A
https://github.com/Meinersbur edited
https://github.com/llvm/llvm-project/pull/131041
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -101,3 +102,19 @@ bool PPCLinuxToolChain::SupportIEEEFloat128(
return GlibcSupportsFloat128((Twine(D.DyldPrefix) + Linker).str()) &&
!(D.CCCIsCXX() && HasUnsupportedCXXLib);
}
+
+void PPCLinuxToolChain::addFortranRuntimeLibs(
+const ArgList &Args, llvm::opt::A
Meinersbur wrote:
This PR may allow us to build the shared library by default
https://github.com/llvm/llvm-project/blob/6c7c8b4776f51dc66138f71333e6ada0c33ca5e2/flang-rt/CMakeLists.txt#L159-L165
I would generally prefer if we could avoid having driver behavior depend on the
existance of files,
@@ -2794,6 +2794,11 @@ void tools::addOpenMPDeviceRTL(const Driver &D,
for (const auto &LibPath : HostTC.getFilePaths())
LibraryPaths.emplace_back(LibPath);
+ // Check the target specific library path for the triple as well.
+ SmallString<128> P(D.Dir);
+ llvm::sys::p
https://github.com/Meinersbur edited
https://github.com/llvm/llvm-project/pull/135163
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Meinersbur commented:
Unfortuantely IIRC there is a semantic difference between pragma and metadata:
* llvm.loop.vectorize.enable==false disables vectorization AND interleaving
(by switching off the entire LoopVectorize pass which does both of thise things)
* llvm.loop.vect
@@ -5237,8 +5237,8 @@ width/count of the set of target architectures supported
by your application.
...
}
-Specifying a width/count of 1 disables the optimization, and is equivalent to
-``vectorize(disable)`` or ``interleave(disable)``.
Meinersbur wrote
@@ -122,35 +130,41 @@ else()
get_clang_resource_dir(LIBOMP_HEADERS_INSTALL_PATH SUBDIR include)
endif()
-# Build host runtime library, after LIBOMPTARGET variables are set since they
are needed
-# to enable time profiling support in the OpenMP runtime.
-add_subdirectory(run
https://github.com/Meinersbur commented:
I think using the LLVM_ENABLE_RUNTIMES-machanism is a great idea.
Regarding the move back to `openmp/device`, I don't really have an opinion.
However, there are some arguments to make:
1. The same arguments apply to `libomptarget` as well
2. Definitions
@@ -113,6 +113,13 @@ else()
set(CMAKE_CXX_EXTENSIONS NO)
endif()
+# Emit a warning for people who haven't updated their build.
+if(NOT "openmp" IN_LIST RUNTIMES_amdgcn-amd-amdhsa_LLVM_ENABLE_RUNTIMES AND
+ NOT "openmp" IN_LIST RUNTIMES_nvptx64-nvidia-cuda_LLVM_ENABLE_RUNTI
https://github.com/Meinersbur edited
https://github.com/llvm/llvm-project/pull/136729
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Meinersbur approved this pull request.
LGTM
https://github.com/llvm/llvm-project/pull/137193
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -2264,6 +2263,14 @@ OpenMPIRBuilder::InsertPointOrErrorTy
OpenMPIRBuilder::createSections(
AfterIP = {FiniBB, FiniBB->begin()};
}
+ // Now we can fix the dummy branch to point to the right place
+ if (!CancellationBranches.empty()) {
Meinersbur wro
https://github.com/Meinersbur edited
https://github.com/llvm/llvm-project/pull/137193
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Meinersbur approved this pull request.
LGTM, thank you.
https://github.com/llvm/llvm-project/pull/135161
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Meinersbur wrote:
While I appreciate the review, it is not yet in the state that warants one. It
is still in an experimentation stage, so I did not yet care about formatting.
There are also a lot of changes in here that will eventually not be needed.
Goals are:
1. Currently modules files are
@@ -3979,6 +3979,16 @@ def fsyntax_only : Flag<["-"], "fsyntax-only">,
Visibility<[ClangOption, CLOption, DXCOption, CC1Option, FC1Option,
FlangOption]>,
Group,
HelpText<"Run the preprocessor, parser and semantic analysis stages">;
+
+
+def fno_builtin_modules : Flag<["-
https://github.com/Meinersbur edited
https://github.com/llvm/llvm-project/pull/130285
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -599,9 +599,11 @@ Expected writeOffloadFile(const OffloadFile
&File) {
StringRef Prefix =
sys::path::stem(Binary.getMemoryBufferRef().getBufferIdentifier());
-
- auto TempFileOrErr = createOutputFile(
- Prefix + "-" + Binary.getTriple() + "-" + Binary.getArch
https://github.com/Meinersbur requested changes to this pull request.
Not aware of any filename sanitizer utility either.
https://github.com/llvm/llvm-project/pull/130285
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cg
https://github.com/Meinersbur edited
https://github.com/llvm/llvm-project/pull/130285
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -599,9 +599,11 @@ Expected writeOffloadFile(const OffloadFile
&File) {
StringRef Prefix =
sys::path::stem(Binary.getMemoryBufferRef().getBufferIdentifier());
-
- auto TempFileOrErr = createOutputFile(
- Prefix + "-" + Binary.getTriple() + "-" + Binary.getArch
https://github.com/Meinersbur approved this pull request.
LGTM
https://github.com/llvm/llvm-project/pull/130285
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Meinersbur wrote:
clang-offload-wrapper tries to write a file
`linker-wrapper.c.tmp-on-amdgcn-amd-amdhsa-gfx90a:xnack+-0c971c.o` in the temp
directory. `:` is not a valid character in filenames one Windows. The colon
comes from the `Binary.getArch()` call here:
https://github.com/llvm/llvm-pr
@@ -599,9 +599,10 @@ Expected writeOffloadFile(const OffloadFile
&File) {
StringRef Prefix =
sys::path::stem(Binary.getMemoryBufferRef().getBufferIdentifier());
-
- auto TempFileOrErr = createOutputFile(
- Prefix + "-" + Binary.getTriple() + "-" + Binary.getArch
Meinersbur wrote:
Pre-merge on Linux fails too, but different symptoms. Let me try on my machine.
https://github.com/llvm/llvm-project/pull/130248
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/c
Meinersbur wrote:
@tblah I don't think it is blocking cancellation, we just don't know what is
going on. The `omp.par.outlined.exit` apparently was once need for cancellation
points. Looking at the `cancel_codegen.cpp` test case, it seems to evantually
jump to `omp.par.exit.exitStub`. That one
https://github.com/Meinersbur edited
https://github.com/llvm/llvm-project/pull/131041
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Meinersbur wrote:
> Right. I tried with `FLANG_RT_ENABLE_SHARED=ON` on AIX. I was able to
> dynamically link to the shared `flang-rt` and execute the `a.out`
> successfully.
With this PR applied? It hardcodes `libflang_rt.runtime.a` on AIX, how can it
find the `.so`?
> As for buildCompilerRT
https://github.com/Meinersbur edited
https://github.com/llvm/llvm-project/pull/131041
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Meinersbur edited
https://github.com/llvm/llvm-project/pull/131041
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -1345,7 +1345,16 @@ void tools::addFortranRuntimeLibs(const ToolChain &TC,
const ArgList &Args,
if (AsNeeded)
addAsNeededOption(TC, Args, CmdArgs, /*as_needed=*/false);
}
-CmdArgs.push_back("-lflang_rt.runtime");
+if (TC.getTriple().isOSAIX()) {
+
https://github.com/Meinersbur commented:
This is what I would like to do more generally, not just for AIX. This PR
however will break using a shared library libflang_rt.runtime.so. Ideally, we
would synchronize with the compiler-rt implementation which already has many
supporting functions su
https://github.com/Meinersbur edited
https://github.com/llvm/llvm-project/pull/110217
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Meinersbur edited
https://github.com/llvm/llvm-project/pull/124126
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Meinersbur closed
https://github.com/llvm/llvm-project/pull/121782
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Meinersbur edited
https://github.com/llvm/llvm-project/pull/110298
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Meinersbur approved this pull request.
LGTM, thank you
https://github.com/llvm/llvm-project/pull/131041
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/Meinersbur edited
https://github.com/llvm/llvm-project/pull/131041
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -44,23 +44,19 @@ MDNode *LoopInfo::createPipeliningMetadata(const
LoopAttributes &Attrs,
else if (Attrs.PipelineInitiationInterval != 0)
Enabled = true;
+ SmallVector Args;
+ Args.append(LoopProperties.begin(), LoopProperties.end());
+
if (Enabled != true) {
-
Meinersbur wrote:
> Just want to make sure: Should it be
> `$prefix/lib/clang/${LLVM_VERSION_MAJOR}/finclude//*.mod`?
That is correct, I forgot the version number that is part of the resource
directory.
https://github.com/llvm/llvm-project/pull/137828
___
@@ -88,6 +117,67 @@ set(host_sources
unit-map.cpp
)
+# Module sources that are required by other modules
+set(intrinsics_sources
+ __fortran_builtins.f90
+)
+
+
+#set_property(SOURCE "__fortran_type_info.f90" APPEND PROPERTY OBJECT_DEPENDS
"/home/meinersbur/build/llvm-pro
https://github.com/Meinersbur updated
https://github.com/llvm/llvm-project/pull/137828
Rate limit ยท GitHub
body {
background-color: #f6f8fa;
color: #24292e;
font-family: -apple-system,BlinkMacSystemFont,Segoe
UI,Helvetica,Arial,san
https://github.com/Meinersbur edited
https://github.com/llvm/llvm-project/pull/139293
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -299,6 +310,18 @@ elseif (FLANG_RT_GCC_RESOURCE_DIR)
endif ()
endif ()
+
+
+if (CMAKE_C_BYTE_ORDER STREQUAL "BIG_ENDIAN")
Meinersbur wrote:
I had the same problem as you: CMake does not determine endianness when
cross-compiling. This is leftover from my
Meinersbur wrote:
> ```c
> #pragma omp simd reduction(+:v0)
> #pragma unroll(4)
> ```
That's not supposed to work. I think in the past the unroll pragma was just
dropped. If the debug info is the issue, there hasn't been a lot of care to get
OpenMP emit correct debug info, see e.g. #110700.
301 - 358 of 358 matches
Mail list logo