microregop.cc (5836:96b77f1f419a) | microregop.cc (6361:62de7e765286) |
---|---|
1/* 2 * Copyright (c) 2007 The Hewlett-Packard Development Company 3 * All rights reserved. 4 * 5 * Redistribution and use of this software in source and binary forms, 6 * with or without modification, are permitted provided that the 7 * following conditions are met: 8 * --- 53 unchanged lines hidden (view full) --- 62 63namespace X86ISA 64{ 65 uint64_t RegOpBase::genFlags(uint64_t oldFlags, uint64_t flagMask, 66 uint64_t _dest, uint64_t _src1, uint64_t _src2, 67 bool subtract) const 68 { 69 DPRINTF(X86, "flagMask = %#x\n", flagMask); | 1/* 2 * Copyright (c) 2007 The Hewlett-Packard Development Company 3 * All rights reserved. 4 * 5 * Redistribution and use of this software in source and binary forms, 6 * with or without modification, are permitted provided that the 7 * following conditions are met: 8 * --- 53 unchanged lines hidden (view full) --- 62 63namespace X86ISA 64{ 65 uint64_t RegOpBase::genFlags(uint64_t oldFlags, uint64_t flagMask, 66 uint64_t _dest, uint64_t _src1, uint64_t _src2, 67 bool subtract) const 68 { 69 DPRINTF(X86, "flagMask = %#x\n", flagMask); |
70 if (_destRegIdx[0] & (1 << 6)) { | 70 if (_destRegIdx[0] & IntFoldBit) { |
71 _dest >>= 8; 72 } 73 uint64_t flags = oldFlags & ~flagMask; 74 if(flagMask & (ECFBit | CFBit)) 75 { 76 if(findCarry(dataSize*8, _dest, _src1, _src2)) 77 flags |= (flagMask & (ECFBit | CFBit)); 78 if(subtract) --- 47 unchanged lines hidden --- | 71 _dest >>= 8; 72 } 73 uint64_t flags = oldFlags & ~flagMask; 74 if(flagMask & (ECFBit | CFBit)) 75 { 76 if(findCarry(dataSize*8, _dest, _src1, _src2)) 77 flags |= (flagMask & (ECFBit | CFBit)); 78 if(subtract) --- 47 unchanged lines hidden --- |