[pure-lang-svn] SF.net SVN: pure-lang:[774] pure/trunk/interpreter.cc
Status: Beta
Brought to you by:
agraef
From: <ag...@us...> - 2008-09-16 18:36:48
|
Revision: 774 http://pure-lang.svn.sourceforge.net/pure-lang/?rev=774&view=rev Author: agraef Date: 2008-09-16 18:36:59 +0000 (Tue, 16 Sep 2008) Log Message: ----------- Back out previous changes (r772). Modified Paths: -------------- pure/trunk/interpreter.cc Modified: pure/trunk/interpreter.cc =================================================================== --- pure/trunk/interpreter.cc 2008-09-16 18:29:16 UTC (rev 773) +++ pure/trunk/interpreter.cc 2008-09-16 18:36:59 UTC (rev 774) @@ -6105,13 +6105,8 @@ else { // typed variable, must match type tag against value if (!tagv) tagv = f.CreateLoadGEP(x, Zero, Zero, "tag"); - if (t.ttag == EXPR::MATRIX) { - Value *tagv1 = f.builder.CreateAnd(tagv, UInt(0xfffffff0)); - f.builder.CreateCondBr - (f.builder.CreateICmpEQ(tagv1, SInt(t.ttag)), matchedbb, failedbb); - } else - f.builder.CreateCondBr - (f.builder.CreateICmpEQ(tagv, SInt(t.ttag)), matchedbb, failedbb); + f.builder.CreateCondBr + (f.builder.CreateICmpEQ(tagv, SInt(t.ttag)), matchedbb, failedbb); } s = t.st; break; @@ -6479,10 +6474,6 @@ vtransbb.push_back (BasicBlock::Create(mklabel("trans.state", s->s, t->st->s))); sw->addCase(SInt(t->ttag), vtransbb[i]); - if (t->ttag == EXPR::MATRIX) { - sw->addCase(SInt(EXPR::CMATRIX), vtransbb[i]); - sw->addCase(SInt(EXPR::IMATRIX), vtransbb[i]); - } } // now handle the transitions on the different type tags for (t = t1, i = 0; t != s->tr.end() && t->tag == EXPR::VAR; t++, i++) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |