[llvm-branch-commits] [llvm-branch] r109230 - /llvm/branches/ggreif/waymark-64/lib/VMCore/Use.cpp
Gabor Greif
ggreif at gmail.com
Fri Jul 23 09:02:38 PDT 2010
Author: ggreif
Date: Fri Jul 23 11:02:38 2010
New Revision: 109230
URL: http://llvm.org/viewvc/llvm-project?rev=109230&view=rev
Log:
implement s0 special
Modified:
llvm/branches/ggreif/waymark-64/lib/VMCore/Use.cpp
Modified: llvm/branches/ggreif/waymark-64/lib/VMCore/Use.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/ggreif/waymark-64/lib/VMCore/Use.cpp?rev=109230&r1=109229&r2=109230&view=diff
==============================================================================
--- llvm/branches/ggreif/waymark-64/lib/VMCore/Use.cpp (original)
+++ llvm/branches/ggreif/waymark-64/lib/VMCore/Use.cpp Fri Jul 23 11:02:38 2010
@@ -56,7 +56,7 @@
continue;
switch (Tag) {
case stop64Tag: {
- ptrdiff_t Offset = 0;
+ ptrdiff_t Offset = Current->Prev.getInt() ? 0 : 1;
while (true) {
unsigned Tag = Current->Prev.getInt();
switch (Tag) {
@@ -166,11 +166,18 @@
while (Start != Stop) {
--Stop;
Stop->Val = 0;
- if (!Count) {
+ switch (Count) {
+ case 0:
Stop->Prev.setFromOpaqueValue(reinterpret_cast<Use**>(stop64Tag));
++Done;
Count = Done;
- } else {
+ continue;
+ case 4:
+ Stop->Prev.setFromOpaqueValue(reinterpret_cast<Use**>(zero64Tag));
+ ++Done;
+ Count = 0;
+ continue;
+ default:
Stop->Prev.setFromOpaqueValue(reinterpret_cast<Use**>(Count & 3));
Count >>= 2;
++Done;
More information about the llvm-branch-commits
mailing list