regop.isa (7719:f299139501f7) regop.isa (7720:65d338a8dba4)
1// Copyright (c) 2007-2008 The Hewlett-Packard Development Company
2// All rights reserved.
3//
4// The license below extends only to copyright in the software and shall
5// not be construed as granting a license to any other intellectual
6// property including but not limited to intellectual property relating
7// to a hardware implementation of the functionality of the software
8// licensed hereunder. You may use the software subject to the license

--- 930 unchanged lines hidden (view full) ---

939 DestReg, psrc1, op2);
940 }
941 '''
942
943 class Mdb(WrRegOp):
944 code = 'DoubleBits = psrc1 ^ op2;'
945
946 class Wrip(WrRegOp, CondRegOp):
1// Copyright (c) 2007-2008 The Hewlett-Packard Development Company
2// All rights reserved.
3//
4// The license below extends only to copyright in the software and shall
5// not be construed as granting a license to any other intellectual
6// property including but not limited to intellectual property relating
7// to a hardware implementation of the functionality of the software
8// licensed hereunder. You may use the software subject to the license

--- 930 unchanged lines hidden (view full) ---

939 DestReg, psrc1, op2);
940 }
941 '''
942
943 class Mdb(WrRegOp):
944 code = 'DoubleBits = psrc1 ^ op2;'
945
946 class Wrip(WrRegOp, CondRegOp):
947 code = 'RIP = psrc1 + sop2 + CSBase'
948 else_code="RIP = RIP;"
947 code = '''
948 X86ISA::PCState pc = PCS;
949 pc.npc(psrc1 + sop2 + CSBase);
950 PCS = pc;
951 '''
952 else_code = "PCS = PCS;"
949
950 class Wruflags(WrRegOp):
951 code = 'ccFlagBits = psrc1 ^ op2'
952
953 class Wrflags(WrRegOp):
954 code = '''
955 MiscReg newFlags = psrc1 ^ op2;
956 MiscReg userFlagMask = 0xDD5;
957 // Get only the user flags
958 ccFlagBits = newFlags & userFlagMask;
959 // Get everything else
960 nccFlagBits = newFlags & ~userFlagMask;
961 '''
962
963 class Rdip(RdRegOp):
953
954 class Wruflags(WrRegOp):
955 code = 'ccFlagBits = psrc1 ^ op2'
956
957 class Wrflags(WrRegOp):
958 code = '''
959 MiscReg newFlags = psrc1 ^ op2;
960 MiscReg userFlagMask = 0xDD5;
961 // Get only the user flags
962 ccFlagBits = newFlags & userFlagMask;
963 // Get everything else
964 nccFlagBits = newFlags & ~userFlagMask;
965 '''
966
967 class Rdip(RdRegOp):
964 code = 'DestReg = RIP - CSBase'
968 code = '''
969 X86ISA::PCState pc = PCS;
970 DestReg = pc.npc() - CSBase;
971 '''
965
966 class Ruflags(RdRegOp):
967 code = 'DestReg = ccFlagBits'
968
969 class Rflags(RdRegOp):
970 code = 'DestReg = ccFlagBits | nccFlagBits'
971
972 class Ruflag(RegOp):

--- 415 unchanged lines hidden ---
972
973 class Ruflags(RdRegOp):
974 code = 'DestReg = ccFlagBits'
975
976 class Rflags(RdRegOp):
977 code = 'DestReg = ccFlagBits | nccFlagBits'
978
979 class Ruflag(RegOp):

--- 415 unchanged lines hidden ---