utility.py 文件源码

python
阅读 23 收藏 0 点赞 0 评论 0

项目:ZCC 作者: hlFu 项目源码 文件源码
def cmp(self,x1,x2):
        if(isinstance(x1,Data) and isinstance(x2,Data)):
            x1addr=self.getAbsoluteAdd(x1)
            x2addr=self.getAbsoluteAdd(x2)
            self.gen.asm.append("\tmov eax, "+x1addr+'\n')
            self.gen.asm.append('\tcmp '+'eax'+', '+x2addr+'\n')
            return

        dataflag1=False;
        if(isinstance(x1,Data)):
            x1=self.getAbsoluteAdd(x1)
            dataflag1=True
        dataflag2=False;
        if(isinstance(x2,Data)):
            x2=self.getAbsoluteAdd(x2)
            dataflag2=True
        # if(isinstance(x1,Data)):
        #     x1addr=self.getAbsoluteAdd(x1)
        #     x1=x1.name
        # if(isinstance(x2,Data)):
        #     x2addr=self.getAbsoluteAdd(x2)
        #     x2=x2.name
        # if(x1 in self.currentMap and x2 in self.currentMap):
        #     self.gen.asm.append("\tmov eax, "+x1addr+'\n')
        #     self.gen.asm.append('\tcmp '+'eax'+', '+x2+'\n')
        #     return
        if(dataflag1):
            self.gen.asm.append('\tcmp DWORD PTR '+str(x1)+', '+str(x2)+'\n')
            return
        if(dataflag2):
            self.gen.asm.append('\tcmp '+str(x1)+', DWORD PTR '+str(x2)+'\n')
            return
        self.gen.asm.append('\tcmp '+str(x1)+', '+str(x2)+'\n')
        return
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号