mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
Markers are always eliminated before -O passes. At -Onone, markers can be enabled via command line for all -Onone passes.
44 lines
1.7 KiB
Modula-2
44 lines
1.7 KiB
Modula-2
//===--- PassPipeline.def -------------------------------------------------===//
|
|
//
|
|
// This source file is part of the Swift.org open source project
|
|
//
|
|
// Copyright (c) 2014 - 2017 Apple Inc. and the Swift project authors
|
|
// Licensed under Apache License v2.0 with Runtime Library Exception
|
|
//
|
|
// See https://swift.org/LICENSE.txt for license information
|
|
// See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
///
|
|
/// Metaprogramming for Pass Pipelines
|
|
///
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
/// PASSPIPELINE(NAME, DESCRIPTION)
|
|
///
|
|
/// A pipeline with Name NAME and description DESCRIPTION. PassPipelinePlan
|
|
/// constructor is assumed to not take a SILOptions value.
|
|
#ifndef PASSPIPELINE
|
|
#define PASSPIPELINE(NAME, DESCRIPTION)
|
|
#endif
|
|
|
|
/// PASSPIPELINE_WITH_OPTIONS(NAME, DESCRIPTION)
|
|
///
|
|
/// A pipeline with Name NAME and description DESCRIPTION. PassPipelinePlan
|
|
/// constructor is assumed to take a SILOptions value.
|
|
#ifndef PASSPIPELINE_WITH_OPTIONS
|
|
#define PASSPIPELINE_WITH_OPTIONS(NAME, DESCRIPTION) PASSPIPELINE(NAME, DESCRIPTION)
|
|
#endif
|
|
|
|
PASSPIPELINE_WITH_OPTIONS(Diagnostic, "Guaranteed Passes")
|
|
PASSPIPELINE(OwnershipEliminator, "Utility pass to just run the ownership eliminator pass")
|
|
PASSPIPELINE_WITH_OPTIONS(SILOptPrepare, "Passes that prepare SIL for -O")
|
|
PASSPIPELINE_WITH_OPTIONS(Performance, "Passes run at -O")
|
|
PASSPIPELINE(Onone, "Passes run at -Onone")
|
|
PASSPIPELINE(InstCount, "Utility pipeline to just run the inst count pass")
|
|
PASSPIPELINE(Lowering, "SIL Address Lowering")
|
|
PASSPIPELINE(IRGenPrepare, "Pipeline to run during IRGen")
|
|
|
|
#undef PASSPIPELINE_WITH_OPTIONS
|
|
#undef PASSPIPELINE
|