1//===-- IPO.cpp -----------------------------------------------------------===//
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// This file implements the common infrastructure (including C bindings) for
10// libLLVMIPO.a, which implements several transformations over the LLVM
11// intermediate representation.
12//
13//===----------------------------------------------------------------------===//
14
15#include "llvm/InitializePasses.h"
16#include "llvm/Transforms/IPO.h"
17#include "llvm/Transforms/IPO/AlwaysInliner.h"
18#include "llvm/Transforms/IPO/FunctionAttrs.h"
19
20using namespace llvm;
21
22void llvm::initializeIPO(PassRegistry &Registry) {
23 initializeDAEPass(Registry);
24 initializeDAHPass(Registry);
25 initializeAlwaysInlinerLegacyPassPass(Registry);
26 initializeLoopExtractorLegacyPassPass(Registry);
27 initializeSingleLoopExtractorPass(Registry);
28 initializeBarrierNoopPass(Registry);
29}
30