vtk-m2/docs
Kenneth Moreland 65f6d2aa67 Fix issue with union placeholder on Intel compiler
We have run into an issue with some Intel compilers where if a `union`
contains a `struct` that has some padding for byte alignment, the value
copy might skip over that padding even when the `union` contains a different
type where those bytes are valid. This breaks the value copy of our
`Variant` class.

This is not a unique problem. We have seen the same thing in other
compilers and already have a workaround for when this happens. The
workaround creates a special struct that has no padding placed at the front
of the `union`. The Intel compiler adds a fun twist in that this
placeholder structure only works if the alignment is at least as high as
the struct that follows it.

To get around this problem, make the alignment of the placeholder `struct`
at large as possible for the size of the `union`.

It was taking too long to compile with a device. Redesign the
placeholder to be simpler and compile faster.
2023-09-26 07:25:25 -04:00
..
changelog Fix issue with union placeholder on Intel compiler 2023-09-26 07:25:25 -04:00
batch_lsf.png ci: Add OLCF GitLab-CI 2021-12-15 13:00:47 -05:00
build_stage.png Update CONTRIBUTING.md to cover gitlab piplines 2020-03-26 13:40:47 -04:00
CI-README.md perftest: add perf regression test 2022-10-07 17:42:12 -04:00
CODEOWNERS Add CODEOWNERS to vtk-m to improve merge request reviewer suggestions 2020-02-11 12:53:07 -05:00
CodingConventions.md cxx,c++: Remove c++14 references 2023-02-23 19:30:58 -05:00
external_stage.png Update CONTRIBUTING.md to cover gitlab piplines 2020-03-26 13:40:47 -04:00
HotFixGuide.md Update HotFixGuide.md 2022-05-30 14:13:58 -04:00
HPCBuilds.md Remove deprecated virtual methods 2022-10-28 10:56:52 -06:00
Modules.md Add module mechanism 2022-10-26 12:51:05 -06:00
NewRelease.md.tmpl release,docs: add freeze release branch step 2023-02-23 19:14:51 -05:00
perftest_arch.png perftest: add perf regression test 2022-10-07 17:42:12 -04:00
ReleaseProcess.md newrelease.md: templatize newrelease.md 2022-09-28 18:02:37 -04:00
ReleaseRoadmap.md roadmap: update dates 2023-02-22 12:27:53 -05:00