Hahnfeld added inline comments.
================ Comment at: test/Driver/openmp-offload-gpu.c:150 +/// bitcode library and add it to the LIBRARY_PATH. +// RUN: touch %T/libomptarget-nvptx-sm_60.bc +// RUN: env LIBRARY_PATH=%T %clang -### -fopenmp=libomp -fopenmp-targets=nvptx64-nvidia-cuda \ ---------------- gtbercea wrote: > Hahnfeld wrote: > > gtbercea wrote: > > > gtbercea wrote: > > > > Hahnfeld wrote: > > > > > grokos wrote: > > > > > > ABataev wrote: > > > > > > > Create empty `libomptarget-nvptx-sm_60.bc` in `Driver/lib` > > > > > > > directory and use it in the test rather create|delete it > > > > > > > dynamically. > > > > > > I'm also in favour of this approach. On some systems /tmp is not > > > > > > accessible and the regression test fails. > > > > > This test doesn't (and shouldn't!) use `/tmp`. The build directory > > > > > and `%T` are always writable (if not, you have different issues on > > > > > your system). > > > > > > > > > > Btw you need to pay attention that the driver now finds files next to > > > > > the compiler directory. You may want to make sure that the test > > > > > always passes / doesn't fail for wrong reasons. > > > > Just added this. > > > @Hahnfeld I've used %S instead. > > > > > > The only way in which the test can be a false positive is when the lib > > > folder contains this .bc file. But there's no way to stop this from > > > happening since we check DefaultLibPath first. > > (My comment was related to @grokos, the usage of `%T` and temporarily > > creating the bc lib. The current approach with `%S/Inputs` is much cleaner, > > but you need to create a subdirectory as everbody else did.) > > > > Then you need to find a way to stop this. There already are some flags to > > change the sysroot etc., but I don't know if the influence what you use in > > this patch. In the worst case, you need to add a new flag to disable > > `DefaultLibPath` and use it in the tests. You can't propose to commit a > > test that is known to break (although I acknowledge that > > `libomptarget-nvptx-sm_20.bc` will probably never exist). > I created a lib folder where the empty .bc is present: %S/Inputs/lib > > Good point. sm_20.bc cannot be created since libomptarget requires sm_30 at > least which means that there can never be an sm_20 in the DefaultLibPath > folder so the only way to find it is to follow LIBRARY_PATH. This resolves > the issue. Yes, and everybody else creates subdirectories with names that explain what they contain: `CUDA`, `debian`, `mingw` etc. You should pay more attention to follow a common style when already established. Relying that `sm_20` will never be there is maybe not the cleanest solution but should work here. I'm fine unless somebody else objects. Repository: rC Clang https://reviews.llvm.org/D43197 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits