#ifndef LLVM_SUPPORT_BLOCKFREQUENCY_H
#define LLVM_SUPPORT_BLOCKFREQUENCY_H
+#include "llvm/Support/DataTypes.h"
+
namespace llvm {
class raw_ostream;
class BlockFrequency {
uint64_t Frequency;
-
- static void mult96bit(uint64_t freq, uint32_t N, uint64_t W[2]);
- static uint64_t div96bit(uint64_t W[2], uint32_t D);
+ static const int64_t ENTRY_FREQ = 1024;
public:
BlockFrequency(uint64_t Freq = 0) : Frequency(Freq) { }
+ static uint64_t getEntryFrequency() { return ENTRY_FREQ; }
uint64_t getFrequency() const { return Frequency; }
BlockFrequency &operator*=(const BranchProbability &Prob);