Page MenuHomePhabricator

jhuber6 (Joseph Huber)
User

Projects

User does not belong to any projects.

User Details

User Since
May 4 2020, 11:17 AM (25 w, 3 d)

Recent Activity

Yesterday

jhuber6 accepted D90256: [OpenMP][Docs] Structure and content for the OpenMP documentation.

LGTM

Thu, Oct 29, 10:30 AM · Restricted Project

Wed, Oct 28

jhuber6 added a comment to D89802: [OpenMP] Add Passing in Original Declaration Names To Mapper API.

This patch caused segment fault in D90099 where the map variable info pointer is nullptr but it is deferenced.

Wed, Oct 28, 10:41 AM · Restricted Project, Restricted Project, Restricted Project

Tue, Oct 27

jhuber6 updated the diff for D87946: [OpenMP] Add Location Fields to Libomptarget Runtime for Debugging.

Updating after D90172 and D89802 landed. I don't see it failing the tests anymore but I'll look into it more. I should probably make a test for the source location stuff now that it will all be implemenated.

Tue, Oct 27, 8:06 PM · Restricted Project, Restricted Project, Restricted Project
jhuber6 committed rGd981c7b7581e: [OpenMP] Add Support for Mapping Names in Libomptarget RTL (authored by jhuber6).
[OpenMP] Add Support for Mapping Names in Libomptarget RTL
Tue, Oct 27, 1:59 PM
jhuber6 closed D90172: [OpenMP] Add Support for Mapping Names in Libomptarget RTL.
Tue, Oct 27, 1:58 PM · Restricted Project
jhuber6 committed rGa87d7b3d448a: [OpenMP] Add Passing in Original Declaration Names To Mapper API (authored by jhuber6).
[OpenMP] Add Passing in Original Declaration Names To Mapper API
Tue, Oct 27, 1:11 PM
jhuber6 closed D89802: [OpenMP] Add Passing in Original Declaration Names To Mapper API.
Tue, Oct 27, 1:11 PM · Restricted Project, Restricted Project, Restricted Project
jhuber6 updated the diff for D90172: [OpenMP] Add Support for Mapping Names in Libomptarget RTL.

Changed name_t to map_var_info_t and renamed the Ident.h header.

Tue, Oct 27, 10:20 AM · Restricted Project
jhuber6 updated the diff for D90172: [OpenMP] Add Support for Mapping Names in Libomptarget RTL.

Restructuring code to use type alias wrapper name_t to make it more obvious what the data is beyond a void *. Restructured Ident.h into a class with a constructor, this will have an extra constructor for the OpenMP Ident_t struct once D87946 is merged. Added a routine to print out the declaration site in the table dump using LIBOMPTARGET_INFO. For example, if I seg-fault in an OpenMP region using env LIBOMPTARGET_INFO=2 I will get this output for a sample program.

Tue, Oct 27, 9:28 AM · Restricted Project

Mon, Oct 26

jhuber6 added inline comments to D90172: [OpenMP] Add Support for Mapping Names in Libomptarget RTL.
Mon, Oct 26, 4:34 PM · Restricted Project
jhuber6 updated the diff for D89802: [OpenMP] Add Passing in Original Declaration Names To Mapper API.

Changing to use the range iterators. There was a reason I did it like that initially but forgot to change it back.

Mon, Oct 26, 4:31 PM · Restricted Project, Restricted Project, Restricted Project
jhuber6 requested review of D90172: [OpenMP] Add Support for Mapping Names in Libomptarget RTL.
Mon, Oct 26, 10:40 AM · Restricted Project

Thu, Oct 22

jhuber6 updated the diff for D89802: [OpenMP] Add Passing in Original Declaration Names To Mapper API.

Updating test

Thu, Oct 22, 12:53 PM · Restricted Project, Restricted Project, Restricted Project

Wed, Oct 21

jhuber6 committed rGcd4a4ae97a7c: [OpenMP] Fixing OpenMP/driver.c failing on 32-bit hosts (authored by jhuber6).
[OpenMP] Fixing OpenMP/driver.c failing on 32-bit hosts
Wed, Oct 21, 2:02 PM
jhuber6 closed D89904: [OpenMP] Fixing OpenMP/driver.c failing on 32-bit hosts.
Wed, Oct 21, 2:01 PM · Restricted Project
jhuber6 updated the diff for D89904: [OpenMP] Fixing OpenMP/driver.c failing on 32-bit hosts.

Changing to just check if the target triple is of four known 64-bit architectures.

Wed, Oct 21, 11:43 AM · Restricted Project
jhuber6 requested review of D89904: [OpenMP] Fixing OpenMP/driver.c failing on 32-bit hosts.
Wed, Oct 21, 11:40 AM · Restricted Project
jhuber6 added a comment to D89041: [libc++] Include <__config_site> from <__config>.

Yeah, I think that one might've been a compiler-rt failure that broke some other time since I haven't built from scratch in awhile. I'll let you know if my build finishes without compiler-rt.

Wed, Oct 21, 11:23 AM · Restricted Project, Restricted Project
jhuber6 added a comment to D89041: [libc++] Include <__config_site> from <__config>.

When I try a fresh build using an install script,

In file included from /home2/3n4/llvm/trunk/llvm-project/compiler-rt/lib/fuzzer/FuzzerCrossOver.cpp:11:
/home2/3n4/llvm/trunk/llvm-project/compiler-rt/lib/fuzzer/FuzzerDefs.h:14:10: fatal error: cassert: No such file or directory
 #include <cassert>

How are you building? This does not appear to be one of the usual setups, cause the builds are green on my side.

Wed, Oct 21, 10:52 AM · Restricted Project, Restricted Project
jhuber6 added a comment to D89041: [libc++] Include <__config_site> from <__config>.

Fails at make install.

CMake Error at projects/libcxx/include/cmake_install.cmake:753 (file):

file INSTALL cannot find
"/scratch/opt/llvm-clang/build_mirror_offload_nightly/projects/libcxx/__config_site":
No such file or directory.

This change is surprisingly tricky to land. Thanks for the heads up.

Should be fixed in

commit b5aa67446e01bd277727b05710a42e69ac41e74b
Author: Louis Dionne <ldionne@apple.com>
Date:   Wed Oct 21 12:53:24 2020 -0400

    [libc++] Fix the installation of libc++ headers since the __config_site change
Wed, Oct 21, 10:37 AM · Restricted Project, Restricted Project
jhuber6 added a comment to D89696: [OpenMP] Fixing OpenMP/driver.c failing on 32-bit hosts.

@daltenty Do you think this will fix the problem on AIX?

It's not just AIX that will have this problem I suspect. If you configure any cross-compiling build with a 64-bit host, targeting a 32-bit arch, your going to run into the problem. I think checking against a list of known 64-bit arches is good enough for the purposes here, but the check still needs to be against the target, not the host.

Also, the frontend diagnostic looks like it is off for the same reason:

else if (getArchPtrSize(T) != getArchPtrSize(TT))
  Diags.Report(diag::err_drv_incompatible_omp_arch)

T seems to be the target triple, not the host, but the diagnostic reads: pointer size is incompatible with host.

Wed, Oct 21, 8:42 AM · Restricted Project
jhuber6 added a comment to D89696: [OpenMP] Fixing OpenMP/driver.c failing on 32-bit hosts.

@daltenty Do you think this will fix the problem on AIX?

Wed, Oct 21, 7:03 AM · Restricted Project
jhuber6 updated the diff for D89696: [OpenMP] Fixing OpenMP/driver.c failing on 32-bit hosts.

Changing test to be similar to LLVM's method, checks the linker flags for 32-bit library and only if the target triple is one of the known 64-bit triples.

Wed, Oct 21, 6:57 AM · Restricted Project

Tue, Oct 20

jhuber6 added inline comments to D89696: [OpenMP] Fixing OpenMP/driver.c failing on 32-bit hosts.
Tue, Oct 20, 4:36 PM · Restricted Project
jhuber6 updated the diff for D89802: [OpenMP] Add Passing in Original Declaration Names To Mapper API.

Fixed failing tests and added a new Clang test.

Tue, Oct 20, 1:19 PM · Restricted Project, Restricted Project, Restricted Project
jhuber6 added a comment to D89802: [OpenMP] Add Passing in Original Declaration Names To Mapper API.

Initial version. This fails a few tests and needs additional test cases for the additional functionality as well as support inside the runtime library.

Tue, Oct 20, 8:53 AM · Restricted Project, Restricted Project, Restricted Project
jhuber6 requested review of D89802: [OpenMP] Add Passing in Original Declaration Names To Mapper API.
Tue, Oct 20, 8:50 AM · Restricted Project, Restricted Project, Restricted Project

Mon, Oct 19

jhuber6 committed rG24df30efda61: [OpenMP] Fixing OpenMP/driver.c failing on 32-bit hosts (authored by jhuber6).
[OpenMP] Fixing OpenMP/driver.c failing on 32-bit hosts
Mon, Oct 19, 10:42 AM
jhuber6 closed D89696: [OpenMP] Fixing OpenMP/driver.c failing on 32-bit hosts.
Mon, Oct 19, 10:42 AM · Restricted Project
jhuber6 updated the diff for D89696: [OpenMP] Fixing OpenMP/driver.c failing on 32-bit hosts.

Checking tests again.

Mon, Oct 19, 9:26 AM · Restricted Project
jhuber6 requested review of D89696: [OpenMP] Fixing OpenMP/driver.c failing on 32-bit hosts.
Mon, Oct 19, 6:24 AM · Restricted Project

Mon, Oct 12

jhuber6 added a comment to D87946: [OpenMP] Add Location Fields to Libomptarget Runtime for Debugging.

Current build, fails offloading/target_depend_nowait for an unknown reason after calling cuStreamSynchronize in __tgt_target_teams_mapper_nowait.

Is your tree up to date? We had a problem with this test, which was fixed by D84470.

Mon, Oct 12, 1:29 PM · Restricted Project, Restricted Project, Restricted Project
jhuber6 updated the diff for D87946: [OpenMP] Add Location Fields to Libomptarget Runtime for Debugging.

Current build, fails offloading/target_depend_nowait for an unknown reason after calling cuStreamSynchronize in __tgt_target_teams_mapper_nowait.

Mon, Oct 12, 12:22 PM · Restricted Project, Restricted Project, Restricted Project

Fri, Oct 9

jhuber6 updated the diff for D87946: [OpenMP] Add Location Fields to Libomptarget Runtime for Debugging.

Fixing tests.

Fri, Oct 9, 12:14 PM · Restricted Project, Restricted Project, Restricted Project

Thu, Oct 8

jhuber6 committed rG3cc1f1fc1d97: [OpenMP] Replace OpenMP RTL Functions With OMPIRBuilder and OMPKinds.def (authored by jhuber6).
[OpenMP] Replace OpenMP RTL Functions With OMPIRBuilder and OMPKinds.def
Thu, Oct 8, 11:01 AM
jhuber6 updated the diff for D88430: [OpenMP] Replace OpenMP RTL Functions With OMPIRBuilder and OMPKinds.def.

Updating tests after landing D88594.

Thu, Oct 8, 10:06 AM · Restricted Project, Restricted Project, Restricted Project
jhuber6 updated the diff for D87946: [OpenMP] Add Location Fields to Libomptarget Runtime for Debugging.

Removing the _loc suffix. The Mapper API hasn't been officially released in Clang 11.x so we're still free to make changes. Currently working on augmenting the mapper API with variable declaration information so we can associate mapped pointers with their source names if the user specified debug locations.

Thu, Oct 8, 10:00 AM · Restricted Project, Restricted Project, Restricted Project
jhuber6 reopened D87946: [OpenMP] Add Location Fields to Libomptarget Runtime for Debugging.

Closed accidentally, had the wrong revision link in another patch.

Thu, Oct 8, 9:13 AM · Restricted Project, Restricted Project, Restricted Project
jhuber6 closed D88929: [OpenMP] Change CMake Configuration to Build for Highest CUDA Architecture by Default.

Screwed up and put the wrong revision in the commit message. Closed in rGd564409946a5a13cb6391fc0fec54dcbd6f6d249

Thu, Oct 8, 9:12 AM · Restricted Project, Restricted Project
jhuber6 committed rGd564409946a5: [OpenMP] Change CMake Configuration to Build for Highest CUDA Architecture by… (authored by jhuber6).
[OpenMP] Change CMake Configuration to Build for Highest CUDA Architecture by…
Thu, Oct 8, 9:10 AM
jhuber6 closed D87946: [OpenMP] Add Location Fields to Libomptarget Runtime for Debugging.
Thu, Oct 8, 9:10 AM · Restricted Project, Restricted Project, Restricted Project
jhuber6 committed rG6668e4cc685e: [OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload (authored by jhuber6).
[OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload
Thu, Oct 8, 5:23 AM

Wed, Oct 7

jhuber6 updated the diff for D88929: [OpenMP] Change CMake Configuration to Build for Highest CUDA Architecture by Default.

Implementing Ye's code. I changed it to putput the architecture as a dependency and then set the value where we define the default architecture. I did a full build from scratch using this and got the sm_70 libraries for my machine without needing to specify it in my build script.

Wed, Oct 7, 2:27 PM · Restricted Project, Restricted Project
jhuber6 updated the diff for D88594: [OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload.

Okay, I'll push it after this finishes its build and see if buildbot sends me angry emails again.

Wed, Oct 7, 1:24 PM · Restricted Project, Restricted Project, Restricted Project
jhuber6 updated the diff for D88594: [OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload.

Changed method for comparing the architectures. Enum is local to the loop so it shouldn't pollute the namespace.

Wed, Oct 7, 1:14 PM · Restricted Project, Restricted Project, Restricted Project
jhuber6 added inline comments to D88594: [OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload.
Wed, Oct 7, 11:58 AM · Restricted Project, Restricted Project, Restricted Project
jhuber6 added inline comments to D88594: [OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload.
Wed, Oct 7, 11:35 AM · Restricted Project, Restricted Project, Restricted Project
jhuber6 added inline comments to D88594: [OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload.
Wed, Oct 7, 11:27 AM · Restricted Project, Restricted Project, Restricted Project
jhuber6 updated the diff for D88594: [OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload.

Removing the architecture detection from lit. Simply changing the tests to use specific architectures, in this case x86_64 and aarch64.

Wed, Oct 7, 11:16 AM · Restricted Project, Restricted Project, Restricted Project

Tue, Oct 6

jhuber6 added inline comments to D88929: [OpenMP] Change CMake Configuration to Build for Highest CUDA Architecture by Default.
Tue, Oct 6, 8:12 PM · Restricted Project, Restricted Project
jhuber6 updated the diff for D88929: [OpenMP] Change CMake Configuration to Build for Highest CUDA Architecture by Default.

Removing redundant call to find_package.

Tue, Oct 6, 6:59 PM · Restricted Project, Restricted Project
jhuber6 added a comment to D88929: [OpenMP] Change CMake Configuration to Build for Highest CUDA Architecture by Default.

Probably not messing with enable_language(CUDA) at the moment, just add cuda_select_nvcc_arch_flags(CUDA_ARCH_FLAGS) to `openmp/libomptarget/cmake/Modules/LibomptargetGetDependencies.cmake?

Tue, Oct 6, 3:59 PM · Restricted Project, Restricted Project
jhuber6 added a comment to D88929: [OpenMP] Change CMake Configuration to Build for Highest CUDA Architecture by Default.

I just realized that this patch affects clang and libomptarget.
I cannot comment on clang. Regarding libomptarget, Could you explain why the detection is not put together with other cuda stuff in openmp/libomptarget/cmake/Modules/LibomptargetGetDependencies.cmake

Tue, Oct 6, 3:49 PM · Restricted Project, Restricted Project
jhuber6 added a comment to D88929: [OpenMP] Change CMake Configuration to Build for Highest CUDA Architecture by Default.

The link I posted indicated that independent feature is merged since 3.12. Better to avoid deprecated stuff when introducing new cmake lines even though some existing lines may still rely on deprecated cmake.

Tue, Oct 6, 3:20 PM · Restricted Project, Restricted Project
jhuber6 added a comment to D88929: [OpenMP] Change CMake Configuration to Build for Highest CUDA Architecture by Default.

FindCUDA has been deprecated.
Please explore the following feature without directly calling FindCUDA.
https://gitlab.kitware.com/cmake/cmake/-/merge_requests/1856

Tue, Oct 6, 2:57 PM · Restricted Project, Restricted Project
jhuber6 requested review of D88929: [OpenMP] Change CMake Configuration to Build for Highest CUDA Architecture by Default.
Tue, Oct 6, 2:36 PM · Restricted Project, Restricted Project

Mon, Oct 5

jhuber6 updated the diff for D88594: [OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload.

Changing method of determining architecture.

Mon, Oct 5, 9:49 AM · Restricted Project, Restricted Project, Restricted Project
jhuber6 added a reverting change for rGeaf73293cb6b: [OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload: rG1dce692de189: Revert "[OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target….
Mon, Oct 5, 9:36 AM
jhuber6 committed rG1dce692de189: Revert "[OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target… (authored by jhuber6).
Revert "[OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target…
Mon, Oct 5, 9:36 AM
jhuber6 added a reverting change for D88594: [OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload: rG1dce692de189: Revert "[OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target….
Mon, Oct 5, 9:36 AM · Restricted Project, Restricted Project, Restricted Project
jhuber6 committed rGeaf73293cb6b: [OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload (authored by jhuber6).
[OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload
Mon, Oct 5, 8:03 AM
jhuber6 closed D88594: [OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload.
Mon, Oct 5, 8:03 AM · Restricted Project, Restricted Project, Restricted Project

Sun, Oct 4

jhuber6 updated the diff for D88594: [OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload.

Changed the lit substitution to be for fixing this problem specifically. It made the tests too unreadable and wasn't a good solution since it didn't detect 16 bit architectures anyway.

Sun, Oct 4, 3:14 PM · Restricted Project, Restricted Project, Restricted Project

Fri, Oct 2

jhuber6 reopened D88594: [OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload.

Reopening for now.

Fri, Oct 2, 7:14 PM · Restricted Project, Restricted Project, Restricted Project
jhuber6 updated the diff for D88594: [OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload.

Adding an extra substitution in lit to solve the problem of automatically populating the test files with incompatible architectures.

Fri, Oct 2, 7:13 PM · Restricted Project, Restricted Project, Restricted Project

Thu, Oct 1

jhuber6 committed rG82453e759c77: [OpenMP] Add Missing Runtime Call for Globalization Remarks (authored by jhuber6).
[OpenMP] Add Missing Runtime Call for Globalization Remarks
Thu, Oct 1, 6:21 PM
jhuber6 closed D88621: [OpenMP] Add Missing Runtime Call for Globalization Remarks.
Thu, Oct 1, 6:21 PM · Restricted Project, Restricted Project

Wed, Sep 30

jhuber6 requested review of D88621: [OpenMP] Add Missing Runtime Call for Globalization Remarks.
Wed, Sep 30, 3:26 PM · Restricted Project, Restricted Project
jhuber6 added a reverting change for rG90eaedda9b8e: [OpenMP] Replace OpenMP RTL Functions With OMPIRBuilder and OMPKinds.def: rG1b60f63e4fd0: Revert "[OpenMP] Replace OpenMP RTL Functions With OMPIRBuilder and OMPKinds..
Wed, Sep 30, 12:12 PM
jhuber6 committed rG1b60f63e4fd0: Revert "[OpenMP] Replace OpenMP RTL Functions With OMPIRBuilder and OMPKinds. (authored by jhuber6).
Revert "[OpenMP] Replace OpenMP RTL Functions With OMPIRBuilder and OMPKinds.
Wed, Sep 30, 12:12 PM
jhuber6 added a reverting change for D88430: [OpenMP] Replace OpenMP RTL Functions With OMPIRBuilder and OMPKinds.def: rG1b60f63e4fd0: Revert "[OpenMP] Replace OpenMP RTL Functions With OMPIRBuilder and OMPKinds..
Wed, Sep 30, 12:12 PM · Restricted Project, Restricted Project, Restricted Project
jhuber6 added a reverting change for rG9d2378b59150: [OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload: rGbdc85292fb0f: Revert "[OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target….
Wed, Sep 30, 12:09 PM
jhuber6 committed rGbdc85292fb0f: Revert "[OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target… (authored by jhuber6).
Revert "[OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target…
Wed, Sep 30, 12:08 PM
jhuber6 closed D88594: [OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload.

Committed in rG9d2378b59150, forgot to update the commit message.

Wed, Sep 30, 11:06 AM · Restricted Project, Restricted Project, Restricted Project
jhuber6 committed rG90eaedda9b8e: [OpenMP] Replace OpenMP RTL Functions With OMPIRBuilder and OMPKinds.def (authored by jhuber6).
[OpenMP] Replace OpenMP RTL Functions With OMPIRBuilder and OMPKinds.def
Wed, Sep 30, 11:00 AM
jhuber6 closed D88430: [OpenMP] Replace OpenMP RTL Functions With OMPIRBuilder and OMPKinds.def.
Wed, Sep 30, 11:00 AM · Restricted Project, Restricted Project, Restricted Project
jhuber6 committed rG9d2378b59150: [OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload (authored by jhuber6).
[OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload
Wed, Sep 30, 11:00 AM
jhuber6 updated the diff for D88430: [OpenMP] Replace OpenMP RTL Functions With OMPIRBuilder and OMPKinds.def.

Forgot to add one of the test changes from D88594 as it makes this one fail too.

Wed, Sep 30, 10:22 AM · Restricted Project, Restricted Project, Restricted Project
jhuber6 updated the diff for D88430: [OpenMP] Replace OpenMP RTL Functions With OMPIRBuilder and OMPKinds.def.

Moving the Clang error checks into D88594.

Wed, Sep 30, 10:18 AM · Restricted Project, Restricted Project, Restricted Project
jhuber6 requested review of D88594: [OpenMP] Add Error Handling for Conflicting Pointer Sizes for Target Offload.
Wed, Sep 30, 10:15 AM · Restricted Project, Restricted Project, Restricted Project

Sep 29 2020

jhuber6 updated the diff for D87946: [OpenMP] Add Location Fields to Libomptarget Runtime for Debugging.

Adding check for Windows file path. Updating some files after rebasing.

Sep 29 2020, 2:14 PM · Restricted Project, Restricted Project, Restricted Project
jhuber6 updated the diff for D88430: [OpenMP] Replace OpenMP RTL Functions With OMPIRBuilder and OMPKinds.def.

Adding test cases for incompatible architecture messages. Checking the architecture is done by checking all combinations of architectures.

Sep 29 2020, 10:26 AM · Restricted Project, Restricted Project, Restricted Project
jhuber6 added a comment to D87259: [OpenMPOpt][SplitMemTransfer] Implementation of the real issue and wait api functions..

I think these API functions should also include the source location pointer from https://reviews.llvm.org/D87946. We need to consider renaming the *_issue and *_wait functions to extend the *_loc API the aforementioned patch is introducing. E.g. after D87946 the "current" data begin API function will be __tgt_target_data_begin_mapper_loc, so this patch should extend that name as __tgt_target_data_begin_mapper_loc_issue and __tgt_target_data_begin_mapper_loc_wait. Because both patches make changes to the API, I think it's better to wait until the former patch has been committed.

Sep 29 2020, 9:11 AM · Restricted Project

Sep 28 2020

jhuber6 updated the diff for D88430: [OpenMP] Replace OpenMP RTL Functions With OMPIRBuilder and OMPKinds.def.

Removed now unused function for generating convergent runtime functions. Updated Clang to print an error message if the user attempts to specify incompatible architectures due to a difference in pointer sizes.

Sep 28 2020, 3:12 PM · Restricted Project, Restricted Project, Restricted Project
jhuber6 updated the diff for D88430: [OpenMP] Replace OpenMP RTL Functions With OMPIRBuilder and OMPKinds.def.

Reusing OMPBuilder from CGOpenMPRuntime. Altered the failing test case. This case failed when compiling for a 32 bit device on a 64 bit host. This case should be considered an error because the host and device have incompatible pointer sizes and shouldn't be able to communicate. The test has been changed to only compile for hosts and devices that have compatible pointer sizes.

Sep 28 2020, 1:42 PM · Restricted Project, Restricted Project, Restricted Project
jhuber6 added inline comments to D88430: [OpenMP] Replace OpenMP RTL Functions With OMPIRBuilder and OMPKinds.def.
Sep 28 2020, 12:19 PM · Restricted Project, Restricted Project, Restricted Project
jhuber6 added a comment to D88430: [OpenMP] Replace OpenMP RTL Functions With OMPIRBuilder and OMPKinds.def.

This currently fails some Clang tests because of an error with how size_t is handled by Clang versus OMPKinds.def. The compiler will crash when generating code for a 32 bit device on a 64 bit host because Clang uses the size_t from the host while OMPKinds.def uses the size_t from the device.

Sep 28 2020, 10:16 AM · Restricted Project, Restricted Project, Restricted Project
jhuber6 requested review of D88430: [OpenMP] Replace OpenMP RTL Functions With OMPIRBuilder and OMPKinds.def.
Sep 28 2020, 10:14 AM · Restricted Project, Restricted Project, Restricted Project

Sep 27 2020

jhuber6 committed rG0103df7903b3: [OpenMP] Add Missing _static Director for OpenMP Documentation (authored by jhuber6).
[OpenMP] Add Missing _static Director for OpenMP Documentation
Sep 27 2020, 12:37 PM

Sep 25 2020

jhuber6 added a comment to D87946: [OpenMP] Add Location Fields to Libomptarget Runtime for Debugging.

Should we wait until the next OpenMP LLVM meeting to push this?

Sep 25 2020, 9:45 AM · Restricted Project, Restricted Project, Restricted Project
jhuber6 updated the diff for D87946: [OpenMP] Add Location Fields to Libomptarget Runtime for Debugging.

Adding message to build with debugging symbols if source location is not found.

Sep 25 2020, 9:41 AM · Restricted Project, Restricted Project, Restricted Project
jhuber6 updated the diff for D87946: [OpenMP] Add Location Fields to Libomptarget Runtime for Debugging.

Added definition for the ident_t struct from kmp.h along with a method to extract the source location information. Checking the target outcome now prints the file location if ident_t location is available.

Sep 25 2020, 6:30 AM · Restricted Project, Restricted Project, Restricted Project

Sep 24 2020

jhuber6 committed rGa22814194e8e: [OpenMP] OpenMPOpt Support for Globalization Remarks (authored by jhuber6).
[OpenMP] OpenMPOpt Support for Globalization Remarks
Sep 24 2020, 3:23 PM
jhuber6 closed D88243: [OpenMP] OpenMPOpt Support for Globalization Remarks.
Sep 24 2020, 3:23 PM · Restricted Project, Restricted Project
jhuber6 updated the diff for D88243: [OpenMP] OpenMPOpt Support for Globalization Remarks.

Manually adding missing debug info for stack pushing not being generated by Clang. A real solution will require modifying clang's code generation.

Sep 24 2020, 1:38 PM · Restricted Project, Restricted Project
jhuber6 updated the diff for D88243: [OpenMP] OpenMPOpt Support for Globalization Remarks.

Adding test case and changing analysis to use forEachUse. The nvptx file doesn't have the line number information after compiling with debugging symbols so the remark just says "unknown." When you get the remarks from clang it seems to print the information more than necessary.

Sep 24 2020, 10:43 AM · Restricted Project, Restricted Project
jhuber6 added a comment to D88243: [OpenMP] OpenMPOpt Support for Globalization Remarks.

Test?

I tested it just using the example file to see if it works. I tried just calling opt on it but it was giving me some dumb error so I figured I'd just get it set up first.

clang++ -fopenmp clang/tests/OpenMP/declare_target_codegen_globalization.cpp -Rpass=openmp-opt -Rpass-analysis=openmp-opt -S -emit-llvm -fopenmp-targets=nvptx64-nvidia-cuda -O3
Sep 24 2020, 10:18 AM · Restricted Project, Restricted Project
jhuber6 added a comment to D88243: [OpenMP] OpenMPOpt Support for Globalization Remarks.

Test?

Sep 24 2020, 10:15 AM · Restricted Project, Restricted Project
jhuber6 requested review of D88243: [OpenMP] OpenMPOpt Support for Globalization Remarks.
Sep 24 2020, 9:54 AM · Restricted Project, Restricted Project

Sep 23 2020

jhuber6 updated the diff for D87946: [OpenMP] Add Location Fields to Libomptarget Runtime for Debugging.

Changing legacy nowait calls to use the new function interface.

Sep 23 2020, 8:20 AM · Restricted Project, Restricted Project, Restricted Project