Big bug fix: killed uses were being inserted instead of erased!

Also added a set of debug options.

llvm-svn: 1917
This commit is contained in:
Vikram S. Adve 2002-03-19 00:59:08 +00:00
parent dddac0d29a
commit 7e5120163c
2 changed files with 28 additions and 14 deletions

View File

@ -61,17 +61,24 @@
#ifndef METH_LIVE_VAR_INFO_H
#define METH_LIVE_VAR_INFO_H
// set DEBUG_LV for printing out debug messages
// if DEBUG_LV is 1 normal output messages
// if DEBUG_LV is 2 extensive debug info for each instr
static const int DEBUG_LV = 0;
#include "llvm/Pass.h"
#include "llvm/Analysis/LiveVar/ValueSet.h"
#include "Support/CommandLine.h"
class BBLiveVar;
class MachineInstr;
enum LiveVarDebugLevel_t {
LV_DEBUG_None,
LV_DEBUG_Normal,
LV_DEBUG_Instr,
LV_DEBUG_Verbose
};
extern cl::Enum<LiveVarDebugLevel_t> DEBUG_LV;
class MethodLiveVarInfo : public MethodPass {
// Machine Instr to LiveVarSet Map for providing LVset BEFORE each inst
std::map<const MachineInstr *, const ValueSet *> MInst2LVSetBI;
@ -88,7 +95,7 @@ class MethodLiveVarInfo : public MethodPass {
void constructBBs(const Method *M);
// do one backward pass over the CFG
bool doSingleBackwardPass(const Method *M);
bool doSingleBackwardPass(const Method *M, unsigned int iter);
// calculates live var sets for instructions in a BB
void calcLiveVarSetsForBB(const BasicBlock *BB);

View File

@ -61,17 +61,24 @@
#ifndef METH_LIVE_VAR_INFO_H
#define METH_LIVE_VAR_INFO_H
// set DEBUG_LV for printing out debug messages
// if DEBUG_LV is 1 normal output messages
// if DEBUG_LV is 2 extensive debug info for each instr
static const int DEBUG_LV = 0;
#include "llvm/Pass.h"
#include "llvm/Analysis/LiveVar/ValueSet.h"
#include "Support/CommandLine.h"
class BBLiveVar;
class MachineInstr;
enum LiveVarDebugLevel_t {
LV_DEBUG_None,
LV_DEBUG_Normal,
LV_DEBUG_Instr,
LV_DEBUG_Verbose
};
extern cl::Enum<LiveVarDebugLevel_t> DEBUG_LV;
class MethodLiveVarInfo : public MethodPass {
// Machine Instr to LiveVarSet Map for providing LVset BEFORE each inst
std::map<const MachineInstr *, const ValueSet *> MInst2LVSetBI;
@ -88,7 +95,7 @@ class MethodLiveVarInfo : public MethodPass {
void constructBBs(const Method *M);
// do one backward pass over the CFG
bool doSingleBackwardPass(const Method *M);
bool doSingleBackwardPass(const Method *M, unsigned int iter);
// calculates live var sets for instructions in a BB
void calcLiveVarSetsForBB(const BasicBlock *BB);