Commit Graph

1340 Commits

Author SHA1 Message Date
Ivan Krysak 9ebe98e5c8 PTMLIndentedOstream: rename into IndentedOstream 2024-10-15 09:12:55 +02:00
Ivan Krysak ec19b26ee9 PTMLBuilder: rename into ptml::MarkupBuilder 2024-10-15 09:12:55 +02:00
Alessandro Di Federico a0c670652c Improve usages of Expected<T> 2024-10-10 14:50:26 +02:00
Ivan Krysak 724f8bfb59 ABI: streamline terminology
"packed" is used instead of "unnaturally aligned".
2024-10-08 13:53:53 +02:00
Ivan Krysak 4bdc7f83b5 ABI: drop incomplete pascal support 2024-10-08 13:53:53 +02:00
Ivan Krysak 5150fbd8c8 ABI: Limit usage of the StackAlignment option 2024-10-08 13:53:53 +02:00
Ivan Krysak 659bd01974 ABI: make distribution carry alignment information
This allows argument distribution to change based on the previous
argument by only preserving alignment information.
2024-10-08 13:53:53 +02:00
Ivan Krysak 85474eb228 ABI: let last argument distribution differ 2024-10-08 13:53:52 +02:00
Ivan Krysak 7dfd669bde ABI: introduce a new configuration option:
`StackArgumentsUseRegularStructAlignmentRules`.
2024-10-08 13:53:52 +02:00
Ivan Krysak b378ac9b17 ABI: improve handling of padding arguments 2024-10-08 13:53:52 +02:00
Ivan Krysak 8c313a73af Model: make sure segments use generic addresses 2024-10-08 13:53:52 +02:00
Ivan Krysak 1289678457 ABI: fix AArch64 pointer-to-copy handling 2024-10-08 13:53:52 +02:00
Ivan Krysak 99e016f120 ABI: reorganize default ABI helpers 2024-10-08 13:53:52 +02:00
Ivan Krysak d314c6ca36 ABI: fix a bug related to argument splitting 2024-10-08 13:53:52 +02:00
Ivan Krysak e4d8ead973 ABI: make MinimumStackArgumentSize explicit 2024-10-08 13:53:52 +02:00
Ivan Krysak d6ca06b864 ABI: handle SPTAR return value register correctly 2024-10-08 13:53:51 +02:00
Alessandro Di Federico 5db142237b lddtreeResolve: adopt consumeError 2024-10-04 15:20:06 +02:00
Giacomo Vercesi f8ffe38687 Unify cache directory logic
Make the cache directory logic uniform in Python and C++, move the
respective implementations under support since it's project-wide logic
and not exclusive to debug-info.
2024-10-01 13:38:13 +02:00
Alessandro Di Federico 865ffb9892 Minor changes 2024-09-27 20:45:22 +02:00
Alessandro Di Federico 79689f0da2 s/(LLVMContainer &)TargetsList/\1ModuleContainer/ 2024-09-27 12:07:18 +02:00
Alessandro Di Federico 4a14c0abb2 UpdateContract: fix uninitialized Context * 2024-09-27 12:07:18 +02:00
Alessandro Di Federico 33cae7de12 Pipeline: reduce usage of Context 2024-09-27 12:07:18 +02:00
Alessandro Di Federico 6297537486 Drop Pipe::print 2024-09-27 12:07:18 +02:00
Alessandro Di Federico fbf79b5d1b Make Pipe::checkPrecondition optional 2024-09-27 12:07:18 +02:00
Alessandro Di Federico bc064244d6 s/deserialize/fromString/g 2024-09-27 12:07:17 +02:00
Alessandro Di Federico bdb5284540 Target::dump: use toString 2024-09-27 12:07:17 +02:00
Alessandro Di Federico c1cbb4e9a0 Initialize pointers to nullptr 2024-09-27 12:07:17 +02:00
Alessandro Di Federico 2cdedc71f4 s/serialize/toString/
We keep serialize for method dealing with streams.
If it returns a `std::string`, let's use `toString`.
2024-09-27 12:07:17 +02:00
Alessandro Di Federico c8d4381297 s/Context &Ctx/Context &Context/g 2024-09-27 12:07:17 +02:00
Alessandro Di Federico 9bdce8e5c4 s/ExecutionContext &Ctx/ExecutionContext &EC/g 2024-09-27 12:07:17 +02:00
Alessandro Di Federico baa1bd612e Introduce recreateWithoutBody
Similar to moveToNewFunctionType, but doesn't move the BasicBlocks.
2024-09-27 12:07:16 +02:00
Alessandro Di Federico 20b2f97484 EnforceABI: register all recreated functions
Before this change, we were remapping from old to new only functions
that have been requested. Now, we remap also those that are just called.
2024-09-27 12:07:16 +02:00
Alessandro Di Federico 12a0a89e15 Ensure every pipe commits what it should
This commit is the final step in ensuring all the pipes commit what they
should. It also asserts this actually happens, enabling us to easily
catch future problems.
2024-09-27 12:07:16 +02:00
Alessandro Di Federico 0126f0ce9b CodeGenerator: use VirtualSize when ptc.mmaping 2024-09-27 12:07:16 +02:00
Alessandro Di Federico 850276f5c8 Minor changes 2024-09-27 12:07:16 +02:00
Alessandro Di Federico bd08864e49 DwarfReader::readValue: handle DW_EH_PE_omit 2024-09-26 17:44:51 +02:00
Alessandro Di Federico b69c5d2b99 ConvertToCABI: ignore DefaultPrototype 2024-08-16 16:33:39 +02:00
Alessandro Di Federico 5c9b6ed9b3 Rename DILogger into Log 2024-08-16 13:27:00 +02:00
Alessandro Di Federico 09e483f96b BinaryImporter: create a Function for EntryPoint 2024-08-16 13:01:59 +02:00
Alessandro Di Federico cba1d6fa51 PDBImporter: fix .pdb path lookup 2024-08-16 13:01:57 +02:00
Alessandro Di Federico 024c9abda2 Step: fix use-after-free 2024-08-07 16:07:59 +02:00
Alessandro Di Federico 744184c90c Do not use CallBase::getCalledFunction
Use our wrapper, which does not return nullptr if the `FunctionType`s do
not match.
2024-08-07 16:07:59 +02:00
Alessandro Di Federico 05b6989274 FunctionPass: add tracing 2024-08-07 16:07:59 +02:00
Alessandro Di Federico ae7e7a0bc7 IsolateFunctions: add tracing 2024-08-07 16:07:59 +02:00
Alessandro Di Federico ee2d2e25c6 InlineHelpers: add tracing 2024-08-07 16:07:59 +02:00
Alessandro Di Federico 09bc315448 Pipeline: improve invalidation logging 2024-08-07 16:07:59 +02:00
Ivan Krysak 336fac0a67 ABI: do not assert when offset is not aligned
Abort the conversion instead.
2024-08-06 10:26:34 +02:00
Alessandro Di Federico d3b945c6c2 PECOFFImporter: use Generic Segment::StartAddress 2024-08-05 18:00:27 +02:00
Alessandro Di Federico fa6249edc0 Isolate: add FunctionTag to declared functions 2024-08-05 17:42:04 +02:00
Alessandro Di Federico 7b00473859 PDBImporter: rework .pdb search 2024-08-05 17:41:34 +02:00