Repository navigation
fix(agc): allocate indirect arguments test block dynamically on Windows - #6478
leorossi2005 wants to merge 1 commit into
Conversation
GpuIndirectArgumentsMisalignedWriterAhead defined a static array with alignas(BlockBytes) where BlockBytes is 65536. On Windows, the PE-COFF format limits section alignment in object files to 8192 bytes, which caused MinGW GCC to fail compilation with: requested alignment '65536' exceeds object file maximum 8192. Allocate the guest block dynamically through a GuestBlock helper using VirtualAlloc on Windows and std::aligned_alloc on Linux, matching the other execution tests in the library.
|
Other open pull requests touch the same code. Merging one will break the other, or both implement the same thing. If this one builds on them, list them in Depends on.
|
|
@leorossi2005 This corrects the same I propose consolidating this fixture correction in #6452; these two changes are alternatives and should not be stacked. If the dynamic allocation addresses a case that the aligned span misses, please point it out so we can resolve the choice. #6498's full Windows validation currently uses #6452 as its separate test-build dependency. I have added this overlap to #6452's body; no agreement is assumed yet. AI-assisted: Codex. |
|
Thanks for pointing it out, @Amoenus Apologies for the duplicate PR — I had specifically searched open PRs for the fixture name before submitting, but for some reason GitHub's search didn't surface #6452 at the time. Thanks also to @jotitadev for the macOS findings and for confirming that both approaches address the issue there as well (via Closing in favor of #6452 |
What
GpuIndirectArgumentsMisalignedWriterAheaddefined a static array withalignas(BlockBytes)whereBlockBytesis 65536. On Windows, the PE-COFF format limits section alignment in object files to 8192 bytes, which caused MinGW GCC to fail compilation with:Allocate the guest block dynamically through a
GuestBlockhelper usingVirtualAllocon Windows andstd::aligned_allocon Linux, matching the other execution tests in the library (UnimportedLabelOrder.cpp,GlobalLoads.cpp).Tested
Tested on Windows 11 x86-64 (MinGW GCC 15.2.0, Release):
agc_driver_gpu_indirect_arguments_misaligned_writer_aheadcompiles cleanly and passes (1/1 Test #449 ... Passed 0.92 sec).tools/check_conventions.py --base origin/mainpasses.Checklist
main; no other open PR implements the same functionsNotImplemented_nid_no_patch); silent stubs are listed under Silent stubs in their library's technical debt file.mdfiles or images added to the repository (attach them to this PR)