diff options
author | Eric Schweitz <eschweitz@nvidia.com> | 2021-12-14 09:28:53 -0800 |
---|---|---|
committer | Eric Schweitz <eschweitz@nvidia.com> | 2021-12-15 15:45:08 -0800 |
commit | 3d092e31c1f5fab9b427994970616bc5dde3b3be (patch) | |
tree | 339a6ec7de414016ac2f14385cd0b222a2d1b191 /llvm/lib/Object/MachOObjectFile.cpp | |
parent | cf9e61a9bb61605e3c78f5d10ae8a3bcb6d8865a (diff) | |
download | llvm-3d092e31c1f5fab9b427994970616bc5dde3b3be.zip llvm-3d092e31c1f5fab9b427994970616bc5dde3b3be.tar.gz llvm-3d092e31c1f5fab9b427994970616bc5dde3b3be.tar.bz2 |
Add a new memory allocation rewrite pass.
This pass can reclassify memory allocations (fir.alloca, fir.allocmem)
based on heuristics and settings. The intention is to allow better
performance and workarounds for conditions such as environments with
limited stack space.
Currently, implements two conversions from stack to heap allocation.
1. If a stack allocation is an array larger than some threshold value
make it a heap allocation.
2. If a stack allocation is an array with a runtime evaluated size make
it a heap allocation.
Add a lit test for both suboptions.
Reviewed By: PeteSteinfeld, vdonaldson
Differential Revision: https://reviews.llvm.org/D115763
Diffstat (limited to 'llvm/lib/Object/MachOObjectFile.cpp')
0 files changed, 0 insertions, 0 deletions