LLVM: lib/Target/WebAssembly/WebAssemblyDebugValueManager.h Source File (original) (raw)

Go to the documentation of this file.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18#ifndef LLVM_LIB_TARGET_WEBASSEMBLY_WEBASSEMBLYDEBUGVALUEMANAGER_H

19#define LLVM_LIB_TARGET_WEBASSEMBLY_WEBASSEMBLYDEBUGVALUEMANAGER_H

20

23

24namespace llvm {

25

26class MachineInstr;

27

33 getSinkableDebugValues(MachineInstr *Insert) const;

34 bool isInsertSamePlace(MachineInstr *Insert) const;

35

36public:

38

39

40

42

43

45 bool CloneDef = true) const;

46

48

49

51

53};

54

55}

56

57#endif

This file defines the SmallVector class.

Representation of each machine instruction.

Wrapper class representing virtual and physical registers.

This is a 'vector' (really, a variable-sized array), optimized for the case when the array is small.

void updateReg(Register Reg)

void cloneSink(MachineInstr *Insert, Register NewReg=Register(), bool CloneDef=true) const

void replaceWithLocal(unsigned LocalId)

void sink(MachineInstr *Insert)

This is an optimization pass for GlobalISel generic memory operations.