예제 #1
0
def qif(mask, ifSeq, elseSeq=None):
    if elseSeq:
        return [CmpEq(mask), Goto(label(ifSeq))
                ] + elseSeq + [Goto(endlabel(ifSeq))] + ifSeq
    else:
        endlabel(ifSeq)
        return [CmpNeq(mask), Goto(endlabel(ifSeq))] + ifSeq
예제 #2
0
def qif(mask, ifSeq, elseSeq=None):
	if elseSeq:
		endlabel(elseSeq) # make sure to populate label of elseSeq before using it
		return [CmpEq(mask), Goto(label(ifSeq))] + elseSeq + [Goto(endlabel(ifSeq))] + ifSeq
	else:
		endlabel(ifSeq)
		return [CmpNeq(mask), Goto(endlabel(ifSeq))] + ifSeq
예제 #3
0
def qif(mask, ifSeq, elseSeq=None):
    if elseSeq:
        endlabel(
            elseSeq)  # make sure to populate label of elseSeq before using it
        return [CmpEq(mask), Goto(label(ifSeq))
                ] + elseSeq + [Goto(endlabel(ifSeq))] + ifSeq
    else:
        endlabel(ifSeq)
        return [CmpNeq(mask), Goto(endlabel(ifSeq))] + ifSeq
예제 #4
0
def qwhile(mask, seq):
	return [CmpNeq(mask), Goto(endlabel(seq))] + seq
예제 #5
0
def qwhile(mask, seq):
    return [CmpNeq(mask), Goto(endlabel(seq))] + seq