[llvm-commits] [llvm] r122794 - in /llvm/trunk/lib/Target/ARM: ARMScheduleA9.td ARMSubtarget.cpp
Andrew Trick
atrick at apple.com
Mon Jan 3 16:32:57 PST 2011
Author: atrick
Date: Mon Jan 3 18:32:57 2011
New Revision: 122794
URL: http://llvm.org/viewvc/llvm-project?rev=122794&view=rev
Log:
Fix the ARM IIC_iCMPsi itinerary and add an important assert.
Modified:
llvm/trunk/lib/Target/ARM/ARMScheduleA9.td
llvm/trunk/lib/Target/ARM/ARMSubtarget.cpp
Modified: llvm/trunk/lib/Target/ARM/ARMScheduleA9.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMScheduleA9.td?rev=122794&r1=122793&r2=122794&view=diff
==============================================================================
--- llvm/trunk/lib/Target/ARM/ARMScheduleA9.td (original)
+++ llvm/trunk/lib/Target/ARM/ARMScheduleA9.td Mon Jan 3 18:32:57 2011
@@ -123,7 +123,8 @@
InstrItinData<IIC_iCMPr , [InstrStage<1, [A9_Issue0, A9_Issue1], 0>,
InstrStage<1, [A9_ALU0, A9_ALU1]>],
[1, 1], [A9_LdBypass, A9_LdBypass]>,
- InstrItinData<IIC_iCMPsi , [InstrStage<2, [A9_ALU0, A9_ALU1]>],
+ InstrItinData<IIC_iCMPsi , [InstrStage<1, [A9_Issue0, A9_Issue1], 0>,
+ InstrStage<2, [A9_ALU0, A9_ALU1]>],
[1, 1], [A9_LdBypass, NoBypass]>,
InstrItinData<IIC_iCMPsr , [InstrStage<1, [A9_Issue0, A9_Issue1], 0>,
InstrStage<3, [A9_ALU0, A9_ALU1]>],
Modified: llvm/trunk/lib/Target/ARM/ARMSubtarget.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMSubtarget.cpp?rev=122794&r1=122793&r2=122794&view=diff
==============================================================================
--- llvm/trunk/lib/Target/ARM/ARMSubtarget.cpp (original)
+++ llvm/trunk/lib/Target/ARM/ARMSubtarget.cpp Mon Jan 3 18:32:57 2011
@@ -240,6 +240,7 @@
// clear the lowest bit
allStage1Units ^= allStage1Units & ~(allStage1Units - 1);
}
+ assert(InstrItins.IssueWidth <= 2 && "itinerary bug, too many stage 1 units");
}
bool ARMSubtarget::enablePostRAScheduler(
More information about the llvm-commits
mailing list