Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 7 additions & 6 deletions .github/workflows/basic-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
runs-on: ubuntu-24.04

steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6

- run: |
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
Expand Down Expand Up @@ -47,7 +47,7 @@ jobs:
runs-on: ubuntu-22.04

steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6
- uses: codespell-project/actions-codespell@v2.2

lit-suite:
Expand All @@ -74,11 +74,12 @@ jobs:
- { os: ubuntu-24.04, llvm-version: 19, typeart-typegen-legacy: 0 }
- { os: ubuntu-24.04, llvm-version: 20, typeart-typegen-legacy: 0 }
- { os: ubuntu-24.04, llvm-version: 21, typeart-typegen-legacy: 0 }
- { os: ubuntu-24.04, llvm-version: 22, typeart-typegen-legacy: 0 }

runs-on: ${{ matrix.platform.os }}

steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6

- name: LLVM apt
if: ${{ matrix.platform.llvm-version >= 19 }}
Expand Down Expand Up @@ -141,7 +142,7 @@ jobs:

- name: Coveralls (parallel)
if: matrix.preset.coverage
uses: coverallsapp/github-action@master
uses: coverallsapp/github-action@v2.3.6
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
path-to-lcov: build/typeart.coverage
Expand All @@ -150,10 +151,10 @@ jobs:

finish-coverage:
needs: lit-suite
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- name: Coveralls Finished
uses: coverallsapp/github-action@master
uses: coverallsapp/github-action@v2.3.6
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
parallel-finished: true
21 changes: 12 additions & 9 deletions .github/workflows/ext-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,14 +24,15 @@ jobs:
- { os: ubuntu-24.04, llvm-version: 19 }
- { os: ubuntu-24.04, llvm-version: 20 }
- { os: ubuntu-24.04, llvm-version: 21 }
- { os: ubuntu-24.04, llvm-version: 22 }

runs-on: ${{ matrix.platform.os }}

steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6

- name: Checkout test-bench
uses: actions/checkout@v5
uses: actions/checkout@v6
with:
repository: tudasc/typeart-bench
ssh-key: ${{ secrets.AUTH_SSH_CI_EXT }}
Expand Down Expand Up @@ -101,7 +102,7 @@ jobs:
mv test-bench/artifact-${{ matrix.platform.llvm-version }}/* artifact

- name: Upload test-bench artifact
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v7
with:
name: typeart-ci-ext-${{ matrix.platform.llvm-version }}-${{ matrix.preset.name }}
path: artifact
Expand All @@ -119,14 +120,15 @@ jobs:
- { os: ubuntu-24.04, llvm-version: 19 }
- { os: ubuntu-24.04, llvm-version: 20 }
- { os: ubuntu-24.04, llvm-version: 21 }
- { os: ubuntu-24.04, llvm-version: 22 }

runs-on: ${{ matrix.platform.os }}

steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6

- name: Checkout AD test-bench
uses: actions/checkout@v5
uses: actions/checkout@v6
with:
repository: ahueck/typeart-ad-benchmarks
ssh-key: ${{ secrets.AUTH_SSH_CI_EXT_AD }}
Expand Down Expand Up @@ -181,7 +183,7 @@ jobs:
mv ad-test-bench/artifact-${{ matrix.platform.llvm-version }}/* artifact

- name: Upload AD test-bench artifact
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v7
with:
name: typeart-ci-ext-ad-${{ matrix.platform.llvm-version }}-${{ matrix.preset.name }}
path: artifact
Expand All @@ -202,14 +204,15 @@ jobs:
- { os: ubuntu-24.04, llvm-version: 19 }
- { os: ubuntu-24.04, llvm-version: 20 }
- { os: ubuntu-24.04, llvm-version: 21 }
- { os: ubuntu-24.04, llvm-version: 22 }

runs-on: ${{ matrix.platform.os }}

steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v6

- name: Checkout OMP test-bench
uses: actions/checkout@v5
uses: actions/checkout@v6
with:
repository: tudasc/typeart-bench
ssh-key: ${{ secrets.AUTH_SSH_CI_EXT }}
Expand Down Expand Up @@ -271,7 +274,7 @@ jobs:
mv omp-test-bench/artifact-${{ matrix.platform.llvm-version }}/* artifact

- name: Upload omp-test-bench artifact
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v7
with:
name: typeart-ci-ext-omp-${{ matrix.platform.llvm-version }}-${{ matrix.preset.name }}
path: artifact
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ endif()

if(TYPEART_IS_TOP_LEVEL)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
set(CMAKE_VERBOSE_MAKEFILE ON)
# set(CMAKE_VERBOSE_MAKEFILE ON)
endif()

set(CMAKE_CXX_STANDARD 17)
Expand Down
11 changes: 10 additions & 1 deletion cmake/modules/llvm-util.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -40,9 +40,18 @@ function(typeart_make_llvm_module name sources)

typeart_target_define_file_basename(${name})

set(LLVM_DEFINITIONS_LIST "${LLVM_DEFINITIONS}")
separate_arguments(LLVM_DEFINITIONS_LIST)

set(CLEAN_LLVM_DEFINITIONS "")
foreach(definition ${LLVM_DEFINITIONS_LIST})
string(REGEX REPLACE "^-D" "" clean_definition ${definition})
list(APPEND CLEAN_LLVM_DEFINITIONS ${clean_definition})
endforeach()

target_compile_definitions(${name}
PRIVATE
${LLVM_DEFINITIONS}
${CLEAN_LLVM_DEFINITIONS}
)

make_tidy_check(${name}
Expand Down
2 changes: 1 addition & 1 deletion externals/abseil/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ set(ABSL_PROPAGATE_CXX_STD ON)
FetchContent_Declare(
cpp-abseil
GIT_REPOSITORY https://github.com/abseil/abseil-cpp.git
GIT_TAG 20250814.1
GIT_TAG 20250814.2
GIT_SHALLOW 1
)

Expand Down
3 changes: 2 additions & 1 deletion externals/dimeta/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
FetchContent_Declare(
llvm-dimeta
GIT_REPOSITORY https://github.com/ahueck/llvm-dimeta
GIT_TAG v0.4.0
GIT_TAG v0.5.1
GIT_SHALLOW 1
)

Expand All @@ -19,6 +19,7 @@ mark_as_advanced(
DIMETA_ENABLE_COVERAGE
DIMETA_TEST_CONFIG
DIMETA_LOG_LEVEL
DIMETA_ENABLE_FLANG
FETCHCONTENT_UPDATES_DISCONNECTED_LLVM-DIMETA
FETCHCONTENT_SOURCE_DIR_LLVM-DIMETA
)
24 changes: 12 additions & 12 deletions lib/mpi_interceptor/wrap.py
Original file line number Diff line number Diff line change
Expand Up @@ -85,21 +85,21 @@

# Regular expressions for start and end of declarations in mpi.h. These are
# used to get the declaration strings out for parsing with formal_re below.
begin_decl_re = re.compile("(" + "|".join(rtypes) + ")\s+(MPI_\w+)\s*\(")
begin_decl_re = re.compile(r"(" + "|".join(rtypes) + r")\s+(MPI_\w+)\s*\(")
exclude_re = re.compile("|".join(exclude_strings))
end_decl_re = re.compile("\).*\;")
end_decl_re = re.compile(r"\).*\;")

# Regular Expression for splitting up args. Matching against this
# returns three groups: type info, arg name, and array info
formal_re = re.compile(
"\s*(" + # Start type
"(?:const)?\s*" + # Initial const
"\w+" # Type name (note: doesn't handle 'long long', etc. right now)
")\s*(" + # End type, begin pointers
"(?:\s*\*(?:\s*const)?)*" + # Look for 0 or more pointers with optional 'const'
")\s*" # End pointers
"(?:(\w+)\s*)?" + # Argument name. Optional.
"(\[.*\])?\s*$" # Array type. Also optional. Works for multidimensions b/c it's greedy.
r"\s*(" + # Start type
r"(?:const)?\s*" + # Initial const
r"\w+" # Type name (note: doesn't handle 'long long', etc. right now)
r")\s*(" + # End type, begin pointers
r"(?:\s*\*(?:\s*const)?)*" + # Look for 0 or more pointers with optional 'const'
r")\s*" # End pointers
r"(?:(\w+)\s*)?" + # Argument name. Optional.
r"(\[.*\])?\s*$" # Array type. Also optional. Works for multidimensions b/c it's greedy.
)

# Fortran wrapper suffix
Expand Down Expand Up @@ -724,12 +724,12 @@ def cFormal(self):
def castType(self):
arr = self.array or ''
pointers = self.pointers or ''
if re.search('\[\s*\]', arr):
if re.search(r'\[\s*\]', arr):
if arr.count('[') > 1:
pointers += '(*)' # need extra parens for, e.g., int[][3] -> int(*)[3]
else:
pointers += '*' # justa single array; can pass pointer.
arr = re.sub('\[\s*\]', '', arr)
arr = re.sub(r'\[\s*\]', '', arr)
return "%s%s%s" % (self.type, pointers, arr)

def __str__(self):
Expand Down
Loading