User Details
- User Since
- May 25 2022, 2:21 AM (12 w, 10 h)
Wed, Aug 10
I gave this a spin with LLDB_USE_LLDB_SERVER=1, but there looks to be some pre-existing issues with the lldb-server implementation so I can't really test much normally using builds of Krita:
Jun 30 2022
Jun 29 2022
Jun 27 2022
Jun 26 2022
long double is an issue though...
This is an alternative of D59525 and D59727 for mingw. I think this implementation using _vsnprintf_s_l and _vscprintf_l should replicate the expected behaviour of snprintf_l, with NULL terminator and such. @mstorsjo should be able to confirm whether These two functions are available on both UCRT and MSVCRT configuration of mingw.
Jun 23 2022
It may be possible to stuff a pointer to an EXCEPTION_RECORD into another EXCEPTION_RECORD and use RtlRaiseException to generate the exception, but you'll have to test how it actually works.
Jun 21 2022
Added Windows-specific test
Added test and improved setting description as suggested.
Yes, this (patch) looks right to me.
Jun 20 2022
Remove old code instead of #if 0.
Any reason to #if 0 this instead of just removing it and maybe adding a one line comment like "nested exceptions are not supported"? So that someone can git blame that and find this commit with the removal.
Jun 18 2022
Rebased
Jun 15 2022
Jun 10 2022
Does this test look good:
I suppose it is possible to have a Windows-only test for this. (Someone will need to verify them for me though as I don't have a build that runs tests on Windows.)
Jun 9 2022
Rebased patch
Rebased patch
I agree with this change like I said in the linked review thread.
Ah I did not realize that GNU ld also has the option to add the same build id for mingw. I am fine with you committing these changes. Thanks!
Jun 8 2022
Added the fix to the Minidump find-module test, also updated the commit message.
Thanks @mstorsjo for answering for me.
I guess you're right. MSVC's dumpbin /relocations helper.exe listed nothing at all.
Yeah, that seems fine as a workaround. https://docs.microsoft.com/en-us/windows/win32/debug/pe-format#section-table-section-headers says:
Jun 7 2022
Removed the changes for PDB, I don't think they actually affect anything.
The test https://github.com/llvm/llvm-project/blob/main/lldb/test/Shell/Minidump/Windows/find-module.test fails with this patch. That test opens a minidump and checks that the associated exe is loaded. The minidump contains a codeview PDB record for the exe which is used to generate the UUID, but the same codeview PDB record is missing from the exe. The test still worked because LLDB ignores the empty UUID (it skips the UUID equality check). However, when this patch adds a UUID using the CRC, that test fails because the UUIDs no longer match up.
Sorry, I just realized the crc change broke a test.
Applied suggested change
Thanks for the hint. I think I can add a setting, say plugin.object-file.pe-coff.abi. It needs some plumbing but should be doable.
Jun 6 2022
Addressed comments, added CRC checking for debuglink (only applies if the object does not contain a PDB build id) and added tests for this.
Jun 5 2022
Fixed tests again
Changed test requirement to be more accurate
Fixed tests
Debug--
Fixed loading gnu-debuglink for x86 Windows and added a test for it.
Jun 3 2022
Applied suggestion to make code less clunky.
Jun 2 2022
Replacing with https://reviews.llvm.org/D126898
Replacing with https://reviews.llvm.org/D126898
Jun 1 2022
May 31 2022
May 30 2022
May 28 2022
Changed GetPluginNameStatic to "PE-COFF", and rebased onto main.