llvm-project/llvm/test/Transforms/FunctionSpecialization
Alexandros Lamprineas 438a81a284 [Function Specialisation] Fix use after free
This is a fix for a use-after-free found by the address sanitizer when
compiling GCC: https://github.com/llvm/llvm-project/issues/52821

The Function Specialization pass may remove instructions, cached
inside the PredicateBase class, which are later being dereferenced
from the SCCPInstVisitor class. To prevent the dangling references
I am lazily deleting the dead instructions after the Solver has run.

Differential Revision: https://reviews.llvm.org/D118591
2022-02-02 16:32:10 +00:00
..
bug52821-use-after-free.ll [Function Specialisation] Fix use after free 2022-02-02 16:32:10 +00:00
function-specialization-always-inline.ll [FuncSpec] Don't specialize function which are easy to inline 2021-08-23 19:20:21 +08:00
function-specialization-constant-expression.ll [FuncSpec] Don't specialise (or crash) on poison or constexpr values 2021-09-27 14:58:53 +01:00
function-specialization-constant-expression2.ll [FuncSpec] Don't specialise (or crash) on poison or constexpr values 2021-09-27 14:58:53 +01:00
function-specialization-constant-expression3.ll [FuncSpec] Allow ConstExprs that are function pointers 2021-10-12 11:44:26 +01:00
function-specialization-constant-integers.ll [FuncSpec] Don't specialize function which are easy to inline 2021-08-23 19:20:21 +08:00
function-specialization-loop.ll [FuncSpec] Don't specialize function which are easy to inline 2021-08-23 19:20:21 +08:00
function-specialization-minsize.ll [FuncSpec] Add minsize test. NFC. 2021-06-21 15:21:09 +01:00
function-specialization-minsize2.ll [FuncSpec] Don't specialise call sites that have the MinSize attribute set 2021-09-10 09:01:45 +01:00
function-specialization-minsize3.ll [FuncSpec] Don't specialise call sites that have the MinSize attribute set 2021-09-10 09:01:45 +01:00
function-specialization-nodup.ll [FuncSpec] Don't specialise functions with attribute NoDuplicate. 2021-06-17 10:32:29 +01:00
function-specialization-nodup2.ll [FuncSpec] Don't specialise functions with NoDuplicate instructions. 2021-06-21 09:02:11 +01:00
function-specialization-noexec.ll [FuncSpec] Fixed prefix typo in test function-specialization-noexec.ll. NFC. 2021-06-16 16:25:26 +01:00
function-specialization-nonconst-glob.ll [FuncSpec] Specialising on addresses of const global values. 2021-09-17 08:07:05 +01:00
function-specialization-nothing-todo.ll [FuncSpec] Don't run the solver if there's nothing to do 2021-10-13 19:05:19 +01:00
function-specialization-poison.ll [FuncSpec] Don't specialise (or crash) on poison or constexpr values 2021-09-27 14:58:53 +01:00
function-specialization-recursive.ll [FuncSpec] Support specialising recursive functions 2021-08-04 08:07:04 +01:00
function-specialization-recursive2.ll [FuncSpec] Support specialising recursive functions 2021-08-04 08:07:04 +01:00
function-specialization-recursive3.ll [FuncSpec] Support specialising recursive functions 2021-08-04 08:07:04 +01:00
function-specialization-recursive4.ll [FuncSpec] Support specialising recursive functions 2021-08-04 08:07:04 +01:00
function-specialization-stats.ll [FuncSpec] Don't specialize function which are easy to inline 2021-08-23 19:20:21 +08:00
function-specialization.ll [FuncSpec] Fix test case: only run funcspec and not any other passes. NFC. 2021-09-08 12:40:58 +01:00
function-specialization2.ll [FuncSpec] Don't specialize function which are easy to inline 2021-08-23 19:20:21 +08:00
function-specialization3.ll [OpaquePtr] Support forward references in textual IR 2021-06-29 20:10:31 +02:00
function-specialization4.ll [FuncSpec] Rename internal option. NFC. 2021-12-21 11:02:01 +00:00
function-specialization5.ll