Files
TheRock/compiler/amd-llvm/amd/comgr/docs/ReleaseNotes.md
T
derek.holloway 7502bf64a4
CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
Flatten subprojects into a single base monorepo
2026-09-02 16:34:47 -07:00

95 lines
3.6 KiB
Markdown

Comgr v4.0 (In Progress) Release Notes
========================
This document contains the release notes for the Code Object Manager (Comgr),
part of the ROCm Software Stack, release v4.0. Here we describe the status of
Comgr, including major improvements from the previous release and new feature
These are in-progress notes for the upcoming Comgr v4.0 release.
Release notes for previous releases can be found in
[docs/historical](docs/historical).
Potentially Breaking Changes
----------------------------
These changes are ones which we think may surprise users when upgrading to
Comgr v4.0 because of the opportunity they pose for disruption to existing
code bases.
New Features
------------
- Added a Comgr Caching infrastructure, currently covering the following
behaviors:
- caching unbundling of compressed clang offload bundles
- caching SPIR-V to LLVM IR translations
- caching clang driver invocations
More information about the Comgr Caching infrastructure and how to use it can
be found in amd/comgr/README.md.
- Updated the license used for Comgr from Illinois to Apache 2.0 with LLVM
Extensions (the same license used by LLVM).
- Added Image Support to Comgr's handling of ISA metadata. Support for images
can now be queried with Comgr's metadata APIs.
- Added support for linking device library files through the use of a Virtual
File System (VFS).
- Added embedded libc++ headers for HIPRTC standard C++ support. A subset of
freestanding-safe headers (`<type_traits>`, `<tuple>`, `<cstdint>`, etc.) are
embedded at build time and mapped to clang's default include locations via VFS
at runtime. The embedded headers are configured as a fallback (`-idirafter`),
so system C++ headers take priority when available. Can be disabled with
`-DCOMGR_EMBED_LIBCXX_HEADERS=OFF`.
Bug Fixes
---------
New APIs
--------
- amd\_comgr\_info\_set\_vfs\_() (v3.1)
- By setting this ActionInfo property, users can explicitly dictate if
device libraries should be linked using the real file system or a
Virtual File System (VFS).
Deprecated APIs
---------------
Removed APIs
------------
- The following Comgr metadata API has removed support for V2/V3 Code Objects:
- amd\_comgr\_lookup\_code\_object()
This API still supports Code Objects V4 and later.
New Comgr Actions and Data Types
--------------------------------
Deprecated Comgr Actions and Data Types
---------------------------------------
Removed Comgr Actions and Data Types
------------------------------------
- AMD\_COMGR\_ACTION\_DISASSEMBLE\_RELOCATABLE\_TO\_SOURCE
- AMD\_COMGR\_ACTION\_DISASSEMBLE\_EXECUTABLE\_TO\_SOURCE
- AMD\_COMGR\_ACTION\_DISASSEMBLE\_BYTES\_TO\_SOURCE
Comgr Testing, Debugging, and Logging Updates
---------------------------------------------
- Removed HIP\_PATH and ROCM\_PATH environment variables. These were used for
now-removed Comgr actions, such as \*COMPILE\_SOURCE\_TO\_FATBIN.
- Added a new Comgr LIT testing infrastructure, which can be found in
amd/comgr/test-lit. This will allow us to write more in-depth and targeted
tests.
- Added support for source-based code coverage. See README.md for more details.
New Targets
-----------
Removed Targets
---------------
Significant Known Problems
--------------------------
- Several Comgr actions currently write and read files from the filesystem,
which is a known performance issue. We aim to address this by improving
clang's virtual file system support
- Several Comgr actions currently fork new processes for compilation actions. We
aim to address this by librayizing llvm tools that are currently only useable as
a separate process.