regop.isa (6461:418145f4d7a6) regop.isa (6462:209c3818a863)
1// Copyright (c) 2007-2008 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

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

525 uint64_t hiResult;
526 uint64_t psrc1_h = psrc1 / shifter;
527 uint64_t psrc1_l = psrc1 & mask(halfSize);
528 uint64_t psrc2_h = (op2 / shifter) & mask(halfSize);
529 uint64_t psrc2_l = op2 & mask(halfSize);
530 hiResult = ((psrc1_l * psrc2_h + psrc1_h * psrc2_l +
531 ((psrc1_l * psrc2_l) / shifter)) /shifter) +
532 psrc1_h * psrc2_h;
1// Copyright (c) 2007-2008 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

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

525 uint64_t hiResult;
526 uint64_t psrc1_h = psrc1 / shifter;
527 uint64_t psrc1_l = psrc1 & mask(halfSize);
528 uint64_t psrc2_h = (op2 / shifter) & mask(halfSize);
529 uint64_t psrc2_l = op2 & mask(halfSize);
530 hiResult = ((psrc1_l * psrc2_h + psrc1_h * psrc2_l +
531 ((psrc1_l * psrc2_l) / shifter)) /shifter) +
532 psrc1_h * psrc2_h;
533 if (spsrc1 < 0)
533 if (bits(psrc1, dataSize * 8 - 1))
534 hiResult -= op2;
534 hiResult -= op2;
535 int64_t bigSop2 = sop2;
536 if (bigSop2 < 0)
535 if (bits(op2, dataSize * 8 - 1))
537 hiResult -= psrc1;
538 ProdHi = hiResult;
539 '''
540
541 class Mul1u(WrRegOp):
542 code = '''
543 ProdLow = psrc1 * op2;
544 int halfSize = (dataSize * 8) / 2;

--- 776 unchanged lines hidden ---
536 hiResult -= psrc1;
537 ProdHi = hiResult;
538 '''
539
540 class Mul1u(WrRegOp):
541 code = '''
542 ProdLow = psrc1 * op2;
543 int halfSize = (dataSize * 8) / 2;

--- 776 unchanged lines hidden ---