LLVM: lib/SandboxIR/Function.cpp Source File (original) (raw)

Go to the documentation of this file.

1

2

3

4

5

6

7

8

12

14

19

21 Ctx.getTracker()

22 .emplaceIfTracking<

25}

26

27#ifndef NDEBUG

30 OS << *F->getReturnType() << " @" << F->getName() << "(";

32 F->args(),

34 auto *SBArg = cast_or_null(Ctx.getValue(&LLVMArg));

35 if (SBArg == nullptr)

36 OS << "NULL";

37 else

38 SBArg->printAsOperand(OS);

39 },

40 [&] { OS << ", "; });

41 OS << ")";

42}

43

46 OS << " {\n";

49 *LLVMF,

52 if (BB == nullptr)

53 OS << "NULL";

54 else

55 OS << *BB;

56 },

57 [&OS] { OS << "\n"; });

58 OS << "}\n";

59}

60#endif

61

62}

This class represents an incoming formal argument to a Function.

LLVM Basic Block Representation.

This class implements an extremely fast bulk output stream that can only output to a stream.

LLVM_ABI FunctionType * getFunctionType() const

Definition Function.cpp:15

LLVM_ABI_FOR_TEST void dumpOS(raw_ostream &OS) const final

Definition Function.cpp:44

LLVM_ABI void setAlignment(MaybeAlign Align)

Sets the alignment attribute of the Function.

Definition Function.cpp:20

LLVM_ABI_FOR_TEST void dumpNameAndArgs(raw_ostream &OS) const

Definition Function.cpp:28

This class can be used for tracking most instruction setters.

llvm::Value * Val

The LLVM Value that corresponds to this SandboxIR Value.

Context & Ctx

All values point to the context.

void interleave(ForwardIterator begin, ForwardIterator end, UnaryFunctor each_fn, NullaryFunctor between_fn)

An STL-style algorithm similar to std::for_each that applies a second functor between every pair of e...

auto cast_or_null(const Y &Val)

decltype(auto) cast(const From &Val)

cast - Return the argument parameter cast to the specified type.

This struct is a compact representation of a valid (non-zero power of two) alignment.

This struct is a compact representation of a valid (power of two) or undefined (0) alignment.