Deleted Added
sdiff udiff text old ( 6545:9c68aea7b1e6 ) new ( 6799:36131e4dfb6e )
full compact
1/*
2 * Copyright (c) 2009 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

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

30
31#ifndef __ARCH_X86_INSTS_MICROMEDIAOP_HH__
32#define __ARCH_X86_INSTS_MICROMEDIAOP_HH__
33
34#include "arch/x86/insts/microop.hh"
35
36namespace X86ISA
37{
38 enum MediaFlag {
39 MediaScalarOp = 128
40 };
41
42 class MediaOpBase : public X86MicroopBase
43 {
44 protected:
45 const RegIndex src1;
46 const RegIndex dest;
47 const uint8_t srcSize;
48 const uint8_t destSize;
49 const uint8_t ext;

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

58 uint8_t _srcSize, uint8_t _destSize, uint8_t _ext,
59 OpClass __opClass) :
60 X86MicroopBase(_machInst, mnem, _instMnem,
61 isMicro, isDelayed, isFirst, isLast,
62 __opClass),
63 src1(_src1.idx), dest(_dest.idx),
64 srcSize(_srcSize), destSize(_destSize), ext(_ext)
65 {}
66
67 bool
68 scalarOp() const
69 {
70 return ext & MediaScalarOp;
71 }
72
73 int
74 numItems(int size) const
75 {
76 return scalarOp() ? 1 : (sizeof(FloatRegBits) / size);
77 }
78 };
79
80 class MediaOpReg : public MediaOpBase
81 {
82 protected:
83 const RegIndex src2;
84
85 // Constructor

--- 44 unchanged lines hidden ---