1 //===- bolt/Passes/Hugify.h -------------------------------------*- C++ -*-===// 2 // 3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4 // See https://llvm.org/LICENSE.txt for license information. 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6 // 7 //===----------------------------------------------------------------------===// 8 9 #ifndef BOLT_PASSES_HUGIFY_H 10 #define BOLT_PASSES_HUGIFY_H 11 12 #include "bolt/Passes/BinaryPasses.h" 13 14 namespace llvm { 15 namespace bolt { 16 17 class HugePage : public BinaryFunctionPass { 18 public: HugePage(const cl::opt<bool> & PrintPass)19 HugePage(const cl::opt<bool> &PrintPass) : BinaryFunctionPass(PrintPass) {} 20 21 Error runOnFunctions(BinaryContext &BC) override; 22 getName()23 const char *getName() const override { return "HugePage"; } 24 }; 25 26 } // namespace bolt 27 } // namespace llvm 28 29 #endif 30