fpop.isa (13441:d70ffc3dabf0) fpop.isa (13613:a19963be12ca)
1// Copyright (c) 2007 The Hewlett-Packard Development Company
2// Copyright (c) 2012-2013 Mark D. Hill and David A. Wood
3// Copyright (c) 2015 Advanced Micro Devices, Inc.
4//
5// All rights reserved.
6//
7// The license below extends only to copyright in the software and shall
8// not be construed as granting a license to any other intellectual

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

375 class Yl2xFp(FpBinaryOp):
376 code = '''
377 FpDestReg = FpSrcReg2 * (log(FpSrcReg1) / log(2));
378 '''
379 op_class = 'FloatSqrtOp'
380
381 class PremFp(FpBinaryOp):
382 code = '''
1// Copyright (c) 2007 The Hewlett-Packard Development Company
2// Copyright (c) 2012-2013 Mark D. Hill and David A. Wood
3// Copyright (c) 2015 Advanced Micro Devices, Inc.
4//
5// All rights reserved.
6//
7// The license below extends only to copyright in the software and shall
8// not be construed as granting a license to any other intellectual

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

375 class Yl2xFp(FpBinaryOp):
376 code = '''
377 FpDestReg = FpSrcReg2 * (log(FpSrcReg1) / log(2));
378 '''
379 op_class = 'FloatSqrtOp'
380
381 class PremFp(FpBinaryOp):
382 code = '''
383 MiscReg new_fsw = FSW;
383 RegVal new_fsw = FSW;
384 int src1_exp;
385 int src2_exp;
386 std::frexp(FpSrcReg1, &src1_exp);
387 std::frexp(FpSrcReg2, &src2_exp);
388
389 const int d = src2_exp - src1_exp;
390 if (d < 64) {
391 const int64_t q = std::trunc(FpSrcReg2 / FpSrcReg1);

--- 63 unchanged lines hidden ---
384 int src1_exp;
385 int src2_exp;
386 std::frexp(FpSrcReg1, &src1_exp);
387 std::frexp(FpSrcReg2, &src2_exp);
388
389 const int d = src2_exp - src1_exp;
390 if (d < 64) {
391 const int64_t q = std::trunc(FpSrcReg2 / FpSrcReg1);

--- 63 unchanged lines hidden ---