FLANG
VScaleAttr.cpp File Reference
#include "flang/Optimizer/Builder/FIRBuilder.h"
#include "flang/Optimizer/Dialect/Support/KindMapping.h"
#include "flang/Optimizer/Transforms/Passes.h"
#include "mlir/Dialect/LLVMIR/LLVMAttrs.h"
#include "mlir/Dialect/LLVMIR/LLVMDialect.h"
#include "mlir/IR/Diagnostics.h"
#include "mlir/Pass/Pass.h"
#include "mlir/Transforms/DialectConversion.h"
#include "llvm/ADT/Twine.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/MathExtras.h"
#include "llvm/Support/raw_ostream.h"
#include "flang/Optimizer/Transforms/Passes.h.inc"

Namespaces

namespace  fir

Macros

#define GEN_PASS_DEF_VSCALEATTR
#define DEBUG_TYPE   "vscale-attr"

Detailed Description

This pass adds a vscale_range attribute to function definitions. The attribute is used for scalable vector operations on Arm processors and should only be run on processors that support this feature. [It is likely harmless to run it on something else, but it is also not valuable].