LLVM 20.0.0git
Classes | Namespaces | Functions
Scalarizer.h File Reference

This pass converts vector operations into scalar operations (or, optionally, operations on smaller vector widths), in order to expose optimization opportunities on the individual scalar operations. More...

#include "llvm/IR/PassManager.h"
#include <optional>

Go to the source code of this file.

Classes

struct  llvm::ScalarizerPassOptions
 
class  llvm::ScalarizerPass
 

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
 

Functions

FunctionPassllvm::createScalarizerPass (const ScalarizerPassOptions &Options=ScalarizerPassOptions())
 Create a legacy pass manager instance of the Scalarizer pass.
 

Detailed Description

This pass converts vector operations into scalar operations (or, optionally, operations on smaller vector widths), in order to expose optimization opportunities on the individual scalar operations.

It is mainly intended for targets that do not have vector units, but it may also be useful for revectorizing code to different vector widths.

Definition in file Scalarizer.h.