x87.isa (9472:8a2175fa7fa0) x87.isa (9582:0632d2d1575c)
1// Copyright (c) 2007 The Hewlett-Packard Development Company
1// Copyright (c) 2007 The Hewlett-Packard Development Company
2// Copyright (c) 2012-13 Mark D. Hill and David A. Wood
2// All rights reserved.
3//
4// The license below extends only to copyright in the software and shall
5// not be construed as granting a license to any other intellectual
6// property including but not limited to intellectual property relating
7// to a hardware implementation of the functionality of the software
8// licensed hereunder. You may use the software subject to the license
9// terms below provided that you ensure that this notice is replicated

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

29// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
30// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
31// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
32// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
33// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
34// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
35//
36// Authors: Gabe Black
3// All rights reserved.
4//
5// The license below extends only to copyright in the software and shall
6// not be construed as granting a license to any other intellectual
7// property including but not limited to intellectual property relating
8// to a hardware implementation of the functionality of the software
9// licensed hereunder. You may use the software subject to the license
10// terms below provided that you ensure that this notice is replicated

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

30// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
31// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
32// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
33// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
34// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
35// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
36//
37// Authors: Gabe Black
38// Nilay Vaish
37
38format WarnUnimpl {
39 0x1B: decode OPCODE_OP_BOTTOM3 {
40 //0x0: esc0();
41 0x0: decode MODRM_REG {
39
40format WarnUnimpl {
41 0x1B: decode OPCODE_OP_BOTTOM3 {
42 //0x0: esc0();
43 0x0: decode MODRM_REG {
44 // ST(0) = ST(0) + 32-bit Mem
42 0x0: fadd();
43 0x1: fmul();
44 0x2: fcom();
45 0x3: fcomp();
46 0x4: fsub();
47 0x5: fsubr();
48 0x6: fdiv();
49 0x7: fdivr();
50 }
51 //0x1: esc1();
52 0x1: decode MODRM_REG {
45 0x0: fadd();
46 0x1: fmul();
47 0x2: fcom();
48 0x3: fcomp();
49 0x4: fsub();
50 0x5: fsubr();
51 0x6: fdiv();
52 0x7: fdivr();
53 }
54 //0x1: esc1();
55 0x1: decode MODRM_REG {
53 0x0: fld();
56 0x0: decode MODRM_MOD {
57 0x3: Inst::FLD(Eq);
58 // 32-bit load
59 default: Inst::FLD(Md);
60 }
54 0x1: decode MODRM_MOD {
55 0x3: fxch();
56 default: Inst::UD2();
57 }
58 0x2: decode MODRM_MOD {
59 0x3: decode MODRM_RM {
60 0x0: fnop();
61 default: Inst::UD2();

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

73 0x4: ftst();
74 0x5: fxam();
75 default: Inst::UD2();
76 }
77 default: fldenv();
78 }
79 0x5: decode MODRM_MOD {
80 0x3: decode MODRM_RM {
61 0x1: decode MODRM_MOD {
62 0x3: fxch();
63 default: Inst::UD2();
64 }
65 0x2: decode MODRM_MOD {
66 0x3: decode MODRM_RM {
67 0x0: fnop();
68 default: Inst::UD2();

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

80 0x4: ftst();
81 0x5: fxam();
82 default: Inst::UD2();
83 }
84 default: fldenv();
85 }
86 0x5: decode MODRM_MOD {
87 0x3: decode MODRM_RM {
81 0x0: fld1();
82 0x1: fldl2t();
83 0x2: fldl2e();
84 0x3: fldpi();
85 0x4: fldlg2();
86 0x5: fldln2();
87 0x6: fldz();
88 0x0: Inst::FLD1();
89 0x1: Inst::FLDL2T();
90 0x2: Inst::FLDL2E();
91 0x3: Inst::FLDPI();
92 0x4: Inst::FLDLG2();
93 0x5: Inst::FLDLN2();
94 0x6: Inst::FLDZ();
88 }
95 }
89 default: fldcw_Mw();
96 default: Inst::FLDCW(Mw);
90 }
91 0x6: decode MODRM_MOD {
92 0x3: decode MODRM_RM {
93 0x0: f2xm1();
97 }
98 0x6: decode MODRM_MOD {
99 0x3: decode MODRM_RM {
100 0x0: f2xm1();
94 0x1: fyl2x();
95 0x2: fptan();
101 0x1: Inst::FYL2X();
102 0x2: Inst::FPTAN();
96 0x3: fpatan();
97 0x4: fxtract();
103 0x3: fpatan();
104 0x4: fxtract();
98 0x5: fprem1();
105 0x5: Inst::FPREM1();
99 0x6: fdecstp();
100 0x7: fincstp();
101 }
102 default: fnstenv();
103 }
104 0x7: decode MODRM_MOD {
105 0x3: decode MODRM_RM {
106 0x6: fdecstp();
107 0x7: fincstp();
108 }
109 default: fnstenv();
110 }
111 0x7: decode MODRM_MOD {
112 0x3: decode MODRM_RM {
106 0x0: fprem();
113 0x0: Inst::FPREM();
107 0x1: fyl2xp1();
108 0x2: fsqrt();
109 0x3: Inst::FSINCOS();
110 0x4: frndint();
111 0x5: fscale();
112 0x6: Inst::FSIN();
113 0x7: Inst::FCOS();
114 }

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

176 0x2: fnclex();
177 0x3: fninit();
178 default: Inst::UD2();
179 }
180 default: Inst::UD2();
181 }
182 0x5: decode MODRM_MOD {
183 0x3: fucomi();
114 0x1: fyl2xp1();
115 0x2: fsqrt();
116 0x3: Inst::FSINCOS();
117 0x4: frndint();
118 0x5: fscale();
119 0x6: Inst::FSIN();
120 0x7: Inst::FCOS();
121 }

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

183 0x2: fnclex();
184 0x3: fninit();
185 default: Inst::UD2();
186 }
187 default: Inst::UD2();
188 }
189 0x5: decode MODRM_MOD {
190 0x3: fucomi();
191 // 80-bit load
184 default: fld();
185 }
186 0x6: decode MODRM_MOD {
187 0x3: fcomi();
188 default: Inst::UD2();
189 }
190 0x7: decode MODRM_MOD {
191 0x3: Inst::UD2();

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

220 0x3: fdiv();
221 default: fdivr();
222 }
223 }
224 //0x5: esc5();
225 0x5: decode MODRM_REG {
226 0x0: decode MODRM_MOD {
227 0x3: ffree();
192 default: fld();
193 }
194 0x6: decode MODRM_MOD {
195 0x3: fcomi();
196 default: Inst::UD2();
197 }
198 0x7: decode MODRM_MOD {
199 0x3: Inst::UD2();

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

228 0x3: fdiv();
229 default: fdivr();
230 }
231 }
232 //0x5: esc5();
233 0x5: decode MODRM_REG {
234 0x0: decode MODRM_MOD {
235 0x3: ffree();
236 // 64-bit load
228 default: Inst::FLD(Mq);
229 }
230 0x1: decode MODRM_MOD {
231 0x3: Inst::UD2();
232 default: fisttp();
233 }
234 0x2: Inst::FST(Eq);
235 0x3: Inst::FSTP(Eq);

--- 97 unchanged lines hidden ---
237 default: Inst::FLD(Mq);
238 }
239 0x1: decode MODRM_MOD {
240 0x3: Inst::UD2();
241 default: fisttp();
242 }
243 0x2: Inst::FST(Eq);
244 0x3: Inst::FSTP(Eq);

--- 97 unchanged lines hidden ---