regop.isa (4951:1b51fb0c3983) regop.isa (5007:121fa5d20f59)
1// Copyright (c) 2007 The Hewlett-Packard Development Company
2// All rights reserved.
3//
4// Redistribution and use of this software in source and binary forms,
5// with or without modification, are permitted provided that the
6// following conditions are met:
7//
8// The software must be used only for Non-Commercial Use which means any

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

656 DestReg = merge(DestReg, flag, dataSize);
657 ccFlagBits = ccFlagBits & ~EZFBit;
658 ccFlagBits = ccFlagBits | ((flag == 0) ? EZFBit : 0);
659 ''')
660
661 defineMicroRegOpImm('Sext', '''
662 IntReg val = psrc1;
663 int sign_bit = bits(val, imm8-1, imm8-1);
1// Copyright (c) 2007 The Hewlett-Packard Development Company
2// All rights reserved.
3//
4// Redistribution and use of this software in source and binary forms,
5// with or without modification, are permitted provided that the
6// following conditions are met:
7//
8// The software must be used only for Non-Commercial Use which means any

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

656 DestReg = merge(DestReg, flag, dataSize);
657 ccFlagBits = ccFlagBits & ~EZFBit;
658 ccFlagBits = ccFlagBits | ((flag == 0) ? EZFBit : 0);
659 ''')
660
661 defineMicroRegOpImm('Sext', '''
662 IntReg val = psrc1;
663 int sign_bit = bits(val, imm8-1, imm8-1);
664 val = sign_bit ? (val | ~mask(imm8)) : val;
665 DestReg = merge(DestReg, val, dataSize);''')
664 uint64_t maskVal = mask(imm8);
665 val = sign_bit ? (val | ~maskVal) : (val & maskVal);
666 DestReg = merge(DestReg, val, dataSize);
667 ''')
666
667 defineMicroRegOpImm('Zext', 'DestReg = bits(psrc1, imm8-1, 0);')
668}};
668
669 defineMicroRegOpImm('Zext', 'DestReg = bits(psrc1, imm8-1, 0);')
670}};