division.py (7087:fb8d5786ff30) division.py (10784:2f1a0f6d5d77)
1# Copyright (c) 2007 The Hewlett-Packard Development Company
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

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

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
37
38microcode = '''
1# Copyright (c) 2007 The Hewlett-Packard Development Company
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

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

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
37
38microcode = '''
39# FDIV
40# FDIVP
39def macroop FDIV1_R
40{
41 divfp st(0), st(0), sti
42};
43
44
45def macroop FDIV1_M
46{
47 ldfp87 ufp1, seg, sib, disp
48 divfp st(0), st(0), ufp1
49};
50
51def macroop FDIV1_P
52{
53 rdip t7
54 ldfp87 ufp1, seg, riprel, disp
55 divfp st(0), st(0), ufp1
56};
57
58def macroop FDIV2_R
59{
60 divfp sti, sti, st(0)
61};
62
63def macroop FDIV2_M
64{
65 ldfp87 ufp1, seg, sib, disp
66 divfp st(0), st(0), ufp1
67};
68
69def macroop FDIV2_P
70{
71 rdip t7
72 ldfp87 ufp1, seg, riprel, disp
73 divfp st(0), st(0), ufp1
74};
75
76def macroop FDIVP
77{
78 divfp st(1), st(1), st(0), spm=1
79};
80
81def macroop FDIVP_R
82{
83 divfp sti, sti, st(0), spm=1
84};
85
86def macroop FDIVP_M
87{
88 fault "std::make_shared<UnimpInstFault>()"
89};
90
91def macroop FDIVP_P
92{
93 fault "std::make_shared<UnimpInstFault>()"
94};
95
41# FIDIV
42# FDIVR
43# FDIVRP
44# FIDIVR
45'''
96# FIDIV
97# FDIVR
98# FDIVRP
99# FIDIVR
100'''