LLVM 18.0.0git
Go to the documentation of this file.
1//===- OptimizationLevel.cpp ----------------------------------------------===//
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
11using namespace llvm;
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 const OptimizationLevel O3
Optimize for fast execution as much as possible.
static const OptimizationLevel Oz
A very specialized mode that will optimize for code size at any and all costs.
static const OptimizationLevel O0
Disable as many optimizations as possible.
static const OptimizationLevel Os
Similar to O2 but tries to optimize for small code size instead of fast execution without triggering ...
static const OptimizationLevel O2
Optimize for fast execution as much as possible without triggering significant incremental compile ti...
static const OptimizationLevel O1
Optimize quickly without destroying debuggability.
This is an optimization pass for GlobalISel generic memory operations.
Definition: AddressRanges.h:18