mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
OptimizeARC does not only contain an optimize arc pass: the library also includes aa. What this really is a repository of the extra passes and infrastructure that we inject into LLVM. Thus LLVMPasses is a more descriptive name. It also matches SILPasses. I also taught lit how to use the new llvm-opt driver for running swift llvm passes through opt without having to remember how to setup the dynamic swift llvm pass dylib. You can use this in lit tests by using the substitution %llvm-opt. Swift SVN r21654
28 lines
861 B
C++
28 lines
861 B
C++
//===--- PassesFwd.h - Creation functions for LLVM passes ------*- C++ -*-===//
|
|
//
|
|
// This source file is part of the Swift.org open source project
|
|
//
|
|
// Copyright (c) 2014 - 2015 Apple Inc. and the Swift project authors
|
|
// Licensed under Apache License v2.0 with Runtime Library Exception
|
|
//
|
|
// See http://swift.org/LICENSE.txt for license information
|
|
// See http://swift.org/CONTRIBUTORS.txt for the list of Swift project authors
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#ifndef SWIFT_LLVMPASSES_PASSESFWD_H
|
|
#define SWIFT_LLVMPASSES_PASSESFWD_H
|
|
|
|
namespace llvm {
|
|
class FunctionPass;
|
|
class ImmutablePass;
|
|
}
|
|
|
|
namespace swift {
|
|
llvm::FunctionPass *createSwiftARCOptPass();
|
|
llvm::FunctionPass *createSwiftARCExpandPass();
|
|
llvm::ImmutablePass *createSwiftAliasAnalysisPass();
|
|
} // end namespace swift
|
|
|
|
#endif
|