diff options
author | shadchin <shadchin@yandex-team.ru> | 2022-02-10 16:44:30 +0300 |
---|---|---|
committer | Daniil Cherednik <dcherednik@yandex-team.ru> | 2022-02-10 16:44:30 +0300 |
commit | 2598ef1d0aee359b4b6d5fdd1758916d5907d04f (patch) | |
tree | 012bb94d777798f1f56ac1cec429509766d05181 /contrib/libs/llvm12/include/llvm/CodeGen/FunctionLoweringInfo.h | |
parent | 6751af0b0c1b952fede40b19b71da8025b5d8bcf (diff) | |
download | ydb-2598ef1d0aee359b4b6d5fdd1758916d5907d04f.tar.gz |
Restoring authorship annotation for <shadchin@yandex-team.ru>. Commit 1 of 2.
Diffstat (limited to 'contrib/libs/llvm12/include/llvm/CodeGen/FunctionLoweringInfo.h')
-rw-r--r-- | contrib/libs/llvm12/include/llvm/CodeGen/FunctionLoweringInfo.h | 56 |
1 files changed, 28 insertions, 28 deletions
diff --git a/contrib/libs/llvm12/include/llvm/CodeGen/FunctionLoweringInfo.h b/contrib/libs/llvm12/include/llvm/CodeGen/FunctionLoweringInfo.h index 9fe48ef5ff..665c243054 100644 --- a/contrib/libs/llvm12/include/llvm/CodeGen/FunctionLoweringInfo.h +++ b/contrib/libs/llvm12/include/llvm/CodeGen/FunctionLoweringInfo.h @@ -98,34 +98,34 @@ public: /// Track virtual registers created for exception pointers. DenseMap<const Value *, Register> CatchPadExceptionPointers; - /// Helper object to track which of three possible relocation mechanisms are - /// used for a particular value being relocated over a statepoint. - struct StatepointRelocationRecord { - enum RelocType { - // Value did not need to be relocated and can be used directly. - NoRelocate, - // Value was spilled to stack and needs filled at the gc.relocate. - Spill, - // Value was lowered to tied def and gc.relocate should be replaced with - // copy from vreg. - VReg, - } type = NoRelocate; - // Payload contains either frame index of the stack slot in which the value - // was spilled, or virtual register which contains the re-definition. - union payload_t { - payload_t() : FI(-1) {} - int FI; - Register Reg; - } payload; - }; - - /// Keep track of each value which was relocated and the strategy used to - /// relocate that value. This information is required when visiting - /// gc.relocates which may appear in following blocks. - using StatepointSpillMapTy = - DenseMap<const Value *, StatepointRelocationRecord>; - DenseMap<const Instruction *, StatepointSpillMapTy> StatepointRelocationMaps; - + /// Helper object to track which of three possible relocation mechanisms are + /// used for a particular value being relocated over a statepoint. + struct StatepointRelocationRecord { + enum RelocType { + // Value did not need to be relocated and can be used directly. + NoRelocate, + // Value was spilled to stack and needs filled at the gc.relocate. + Spill, + // Value was lowered to tied def and gc.relocate should be replaced with + // copy from vreg. + VReg, + } type = NoRelocate; + // Payload contains either frame index of the stack slot in which the value + // was spilled, or virtual register which contains the re-definition. + union payload_t { + payload_t() : FI(-1) {} + int FI; + Register Reg; + } payload; + }; + + /// Keep track of each value which was relocated and the strategy used to + /// relocate that value. This information is required when visiting + /// gc.relocates which may appear in following blocks. + using StatepointSpillMapTy = + DenseMap<const Value *, StatepointRelocationRecord>; + DenseMap<const Instruction *, StatepointSpillMapTy> StatepointRelocationMaps; + /// StaticAllocaMap - Keep track of frame indices for fixed sized allocas in /// the entry block. This allows the allocas to be efficiently referenced /// anywhere in the function. |