summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2005-01-16 01:31:31 +0000
committerChris Lattner <sabre@nondot.org>2005-01-16 01:31:31 +0000
commit638559aaa3a30cef596fae20292295cb0a329df1 (patch)
treece177d7b346073accd1b92edaef3b7904c749c08
parent3eb223eaf707b576a799b07dcc55cc8c1183379e (diff)
downloadllvm-638559aaa3a30cef596fae20292295cb0a329df1.tar.gz
llvm-638559aaa3a30cef596fae20292295cb0a329df1.tar.bz2
llvm-638559aaa3a30cef596fae20292295cb0a329df1.tar.xz
Improve compatiblity with HPUX on Itanium, patch by Duraid Madina
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19586 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/llvm/Target/TargetSchedInfo.h14
-rw-r--r--lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp2
-rw-r--r--lib/Target/TargetSchedInfo.cpp10
3 files changed, 13 insertions, 13 deletions
diff --git a/include/llvm/Target/TargetSchedInfo.h b/include/llvm/Target/TargetSchedInfo.h
index 9a4497f9c2..bd2f828e4d 100644
--- a/include/llvm/Target/TargetSchedInfo.h
+++ b/include/llvm/Target/TargetSchedInfo.h
@@ -22,9 +22,9 @@
namespace llvm {
-typedef long long cycles_t;
-static const cycles_t HUGE_LATENCY = ~((long long) 1 << (sizeof(cycles_t)-2));
-static const cycles_t INVALID_LATENCY = -HUGE_LATENCY;
+typedef long long CycleCount_t;
+static const CycleCount_t HUGE_LATENCY = ~((long long) 1 << (sizeof(CycleCount_t)-2));
+static const CycleCount_t INVALID_LATENCY = -HUGE_LATENCY;
//---------------------------------------------------------------------------
// class MachineResource
@@ -78,7 +78,7 @@ struct InstrClassRUsage {
unsigned maxNumIssue;
bool isSingleIssue;
bool breaksGroup;
- cycles_t numBubbles;
+ CycleCount_t numBubbles;
// Feasible slots to use for instructions in this class.
// The size of vector S[] is `numSlots'.
@@ -109,7 +109,7 @@ struct InstrIssueDelta {
MachineOpCode opCode;
bool isSingleIssue;
bool breaksGroup;
- cycles_t numBubbles;
+ CycleCount_t numBubbles;
};
@@ -119,13 +119,13 @@ struct InstrRUsage {
// Issue restrictions for this instruction
bool isSingleIssue;
bool breaksGroup;
- cycles_t numBubbles;
+ CycleCount_t numBubbles;
// Feasible slots to use for this instruction.
std::vector<bool> feasibleSlots;
// Resource usages for this instruction, with one resource vector per cycle.
- cycles_t numCycles;
+ CycleCount_t numCycles;
std::vector<std::vector<resourceId_t> > resourcesByCycle;
private:
diff --git a/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp b/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp
index 8b282a03f0..d2a67411de 100644
--- a/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp
+++ b/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp
@@ -461,7 +461,7 @@ GenericValue lle_X_scanf(FunctionType *M, const vector<GenericValue> &args) {
// int clock(void) - Profiling implementation
GenericValue lle_i_clock(FunctionType *M, const vector<GenericValue> &Args) {
- extern int clock(void);
+ extern unsigned int clock(void);
GenericValue GV; GV.IntVal = clock();
return GV;
}
diff --git a/lib/Target/TargetSchedInfo.cpp b/lib/Target/TargetSchedInfo.cpp
index adf913723d..b2f66dbdee 100644
--- a/lib/Target/TargetSchedInfo.cpp
+++ b/lib/Target/TargetSchedInfo.cpp
@@ -61,22 +61,22 @@ RUConflict(const std::vector<resourceId_t>& fromRVec,
}
-static cycles_t
+static CycleCount_t
ComputeMinGap(const InstrRUsage &fromRU,
const InstrRUsage &toRU)
{
- cycles_t minGap = 0;
+ CycleCount_t minGap = 0;
if (fromRU.numBubbles > 0)
minGap = fromRU.numBubbles;
if (minGap < fromRU.numCycles) {
// only need to check from cycle `minGap' onwards
- for (cycles_t gap=minGap; gap <= fromRU.numCycles-1; gap++) {
+ for (CycleCount_t gap=minGap; gap <= fromRU.numCycles-1; gap++) {
// check if instr. #2 can start executing `gap' cycles after #1
// by checking for resource conflicts in each overlapping cycle
- cycles_t numOverlap =std::min(fromRU.numCycles - gap, toRU.numCycles);
- for (cycles_t c = 0; c <= numOverlap-1; c++)
+ CycleCount_t numOverlap =std::min(fromRU.numCycles - gap, toRU.numCycles);
+ for (CycleCount_t c = 0; c <= numOverlap-1; c++)
if (RUConflict(fromRU.resourcesByCycle[gap + c],
toRU.resourcesByCycle[c])) {
// conflict found so minGap must be more than `gap'