unpack_and_interleave.py (6531:6e2f4aa11482) | unpack_and_interleave.py (6545:9c68aea7b1e6) |
---|---|
1# Copyright (c) 2007 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 --- 41 unchanged lines hidden (view full) --- 50# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 51# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 52# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 53# 54# Authors: Gabe Black 55 56microcode = ''' 57def macroop PUNPCKLBW_MMX_MMX { | 1# Copyright (c) 2007 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 --- 41 unchanged lines hidden (view full) --- 50# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 51# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 52# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 53# 54# Authors: Gabe Black 55 56microcode = ''' 57def macroop PUNPCKLBW_MMX_MMX { |
58 unpack mmx, mmx, mmxm, sel=0, size=1 | 58 unpack mmx, mmx, mmxm, ext=0, size=1 |
59}; 60 61def macroop PUNPCKLBW_MMX_M { 62 ldfp ufp1, seg, sib, disp, dataSize=8 | 59}; 60 61def macroop PUNPCKLBW_MMX_M { 62 ldfp ufp1, seg, sib, disp, dataSize=8 |
63 unpack mmx, mmx, ufp1, sel=0, size=1 | 63 unpack mmx, mmx, ufp1, ext=0, size=1 |
64}; 65 66def macroop PUNPCKLBW_MMX_P { 67 rdip t7 68 ldfp ufp1, seg, riprel, disp, dataSize=8 | 64}; 65 66def macroop PUNPCKLBW_MMX_P { 67 rdip t7 68 ldfp ufp1, seg, riprel, disp, dataSize=8 |
69 unpack mmx, mmx, ufp1, sel=0, size=1 | 69 unpack mmx, mmx, ufp1, ext=0, size=1 |
70}; 71 72def macroop PUNPCKLWD_MMX_MMX { | 70}; 71 72def macroop PUNPCKLWD_MMX_MMX { |
73 unpack mmx, mmx, mmxm, sel=0, size=2 | 73 unpack mmx, mmx, mmxm, ext=0, size=2 |
74}; 75 76def macroop PUNPCKLWD_MMX_M { 77 ldfp ufp1, seg, sib, disp, dataSize=8 | 74}; 75 76def macroop PUNPCKLWD_MMX_M { 77 ldfp ufp1, seg, sib, disp, dataSize=8 |
78 unpack mmx, mmx, ufp1, sel=0, size=2 | 78 unpack mmx, mmx, ufp1, ext=0, size=2 |
79}; 80 81def macroop PUNPCKLWD_MMX_P { 82 rdip t7 83 ldfp ufp1, seg, riprel, disp, dataSize=8 | 79}; 80 81def macroop PUNPCKLWD_MMX_P { 82 rdip t7 83 ldfp ufp1, seg, riprel, disp, dataSize=8 |
84 unpack mmx, mmx, ufp1, sel=0, size=2 | 84 unpack mmx, mmx, ufp1, ext=0, size=2 |
85}; 86 87def macroop PUNPCKLDQ_MMX_MMX { | 85}; 86 87def macroop PUNPCKLDQ_MMX_MMX { |
88 unpack mmx, mmx, mmxm, sel=0, size=4 | 88 unpack mmx, mmx, mmxm, ext=0, size=4 |
89}; 90 91def macroop PUNPCKLDQ_MMX_M { 92 ldfp ufp1, seg, sib, disp, dataSize=8 | 89}; 90 91def macroop PUNPCKLDQ_MMX_M { 92 ldfp ufp1, seg, sib, disp, dataSize=8 |
93 unpack mmx, mmx, ufp1, sel=0, size=4 | 93 unpack mmx, mmx, ufp1, ext=0, size=4 |
94}; 95 96def macroop PUNPCKLDQ_MMX_P { 97 rdip t7 98 ldfp ufp1, seg, riprel, disp, dataSize=8 | 94}; 95 96def macroop PUNPCKLDQ_MMX_P { 97 rdip t7 98 ldfp ufp1, seg, riprel, disp, dataSize=8 |
99 unpack mmx, mmx, ufp1, sel=0, size=4 | 99 unpack mmx, mmx, ufp1, ext=0, size=4 |
100}; 101 102def macroop PUNPCKHBW_MMX_MMX { | 100}; 101 102def macroop PUNPCKHBW_MMX_MMX { |
103 unpack mmx, mmx, mmxm, sel=1, size=1 | 103 unpack mmx, mmx, mmxm, ext=1, size=1 |
104}; 105 106def macroop PUNPCKHBW_MMX_M { 107 ldfp ufp1, seg, sib, disp, dataSize=8 | 104}; 105 106def macroop PUNPCKHBW_MMX_M { 107 ldfp ufp1, seg, sib, disp, dataSize=8 |
108 unpack mmx, mmx, ufp1, sel=1, size=1 | 108 unpack mmx, mmx, ufp1, ext=1, size=1 |
109}; 110 111def macroop PUNPCKHBW_MMX_P { 112 rdip t7 113 ldfp ufp1, seg, riprel, disp, dataSize=8 | 109}; 110 111def macroop PUNPCKHBW_MMX_P { 112 rdip t7 113 ldfp ufp1, seg, riprel, disp, dataSize=8 |
114 unpack mmx, mmx, ufp1, sel=1, size=1 | 114 unpack mmx, mmx, ufp1, ext=1, size=1 |
115}; 116 117def macroop PUNPCKHWD_MMX_MMX { | 115}; 116 117def macroop PUNPCKHWD_MMX_MMX { |
118 unpack mmx, mmx, mmxm, sel=1, size=2 | 118 unpack mmx, mmx, mmxm, ext=1, size=2 |
119}; 120 121def macroop PUNPCKHWD_MMX_M { 122 ldfp ufp1, seg, sib, disp, dataSize=8 | 119}; 120 121def macroop PUNPCKHWD_MMX_M { 122 ldfp ufp1, seg, sib, disp, dataSize=8 |
123 unpack mmx, mmx, ufp1, sel=1, size=2 | 123 unpack mmx, mmx, ufp1, ext=1, size=2 |
124}; 125 126def macroop PUNPCKHWD_MMX_P { 127 rdip t7 128 ldfp ufp1, seg, riprel, disp, dataSize=8 | 124}; 125 126def macroop PUNPCKHWD_MMX_P { 127 rdip t7 128 ldfp ufp1, seg, riprel, disp, dataSize=8 |
129 unpack mmx, mmx, ufp1, sel=1, size=2 | 129 unpack mmx, mmx, ufp1, ext=1, size=2 |
130}; 131 132def macroop PUNPCKHDQ_MMX_MMX { | 130}; 131 132def macroop PUNPCKHDQ_MMX_MMX { |
133 unpack mmx, mmx, mmxm, sel=1, size=4 | 133 unpack mmx, mmx, mmxm, ext=1, size=4 |
134}; 135 136def macroop PUNPCKHDQ_MMX_M { 137 ldfp ufp1, seg, sib, disp, dataSize=8 | 134}; 135 136def macroop PUNPCKHDQ_MMX_M { 137 ldfp ufp1, seg, sib, disp, dataSize=8 |
138 unpack mmx, mmx, ufp1, sel=1, size=4 | 138 unpack mmx, mmx, ufp1, ext=1, size=4 |
139}; 140 141def macroop PUNPCKHDQ_MMX_P { 142 rdip t7 143 ldfp ufp1, seg, riprel, disp, dataSize=8 | 139}; 140 141def macroop PUNPCKHDQ_MMX_P { 142 rdip t7 143 ldfp ufp1, seg, riprel, disp, dataSize=8 |
144 unpack mmx, mmx, ufp1, sel=1, size=4 | 144 unpack mmx, mmx, ufp1, ext=1, size=4 |
145}; 146''' | 145}; 146''' |