LLVM 22.0.0git
OptimizationLevel.cpp
Go to the documentation of this file.
1//===- OptimizationLevel.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
10
11using namespace llvm;
12
14 /*SpeedLevel*/ 0,
15 /*SizeLevel*/ 0};
17 /*SpeedLevel*/ 1,
18 /*SizeLevel*/ 0};
20 /*SpeedLevel*/ 2,
21 /*SizeLevel*/ 0};
23 /*SpeedLevel*/ 3,
24 /*SizeLevel*/ 0};
26 /*SpeedLevel*/ 2,
27 /*SizeLevel*/ 1};
29 /*SpeedLevel*/ 2,
30 /*SizeLevel*/ 2};
This header enumerates the LLVM-provided high-level optimization levels.
static LLVM_ABI const OptimizationLevel O3
Optimize for fast execution as much as possible.
static LLVM_ABI const OptimizationLevel Oz
A very specialized mode that will optimize for code size at any and all costs.
static LLVM_ABI const OptimizationLevel O0
Disable as many optimizations as possible.
static LLVM_ABI const OptimizationLevel Os
Similar to O2 but tries to optimize for small code size instead of fast execution without triggering ...
static LLVM_ABI const OptimizationLevel O2
Optimize for fast execution as much as possible without triggering significant incremental compile ti...
static LLVM_ABI const OptimizationLevel O1
Optimize quickly without destroying debuggability.
This is an optimization pass for GlobalISel generic memory operations.