OLD | NEW |
1 Index: jmorecfg.h | 1 Index: jdmarker.c |
2 =================================================================== | 2 =================================================================== |
3 --- jmorecfg.h» (revision 64575) | 3 --- jdmarker.c» (revision 677) |
4 +++ jmorecfg.h» (working copy) | 4 +++ jdmarker.c» (working copy) |
5 @@ -159,8 +159,10 @@ | 5 @@ -940,7 +940,144 @@ |
6 /* INT32 must hold at least signed 32-bit values. */ | 6 return TRUE; |
| 7 } |
7 | 8 |
8 #ifndef XMD_H» » » /* X11/xmd.h correctly defines INT32 */ | 9 +#ifdef MOTION_JPEG_SUPPORTED |
9 +#ifndef _BASETSD_H_» » /* basetsd.h correctly defines INT32 */ | |
10 typedef long INT32; | |
11 #endif | |
12 +#endif | |
13 | 10 |
14 /* Datatype used for image dimensions. The JPEG standard only supports | 11 +/* The default Huffman tables used by motion JPEG frames. When a motion JPEG |
15 * images up to 64K*64K due to 16-bit fields in SOF markers. Therefore | 12 + * frame does not have DHT tables, we should use the huffman tables suggested b
y |
16 @@ -210,11 +212,13 @@ | 13 + * the JPEG standard. Each of these tables represents a member of the JHUFF_TBL
S |
17 * explicit coding is needed; see uses of the NEED_FAR_POINTERS symbol. | 14 + * struct so we can just copy it to the according JHUFF_TBLS member. |
18 */ | 15 + */ |
| 16 +/* DC table 0 */ |
| 17 +LOCAL(const unsigned char) mjpg_dc0_bits[] = { |
| 18 + 0x00, 0x01, 0x05, 0x01, 0x01, 0x01, 0x01, 0x01, |
| 19 + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 |
| 20 +}; |
| 21 + |
| 22 +LOCAL(const unsigned char) mjpg_dc0_huffval[] = { |
| 23 + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, |
| 24 + 0x08, 0x09, 0x0A, 0x0B |
| 25 +}; |
| 26 + |
| 27 +/* DC table 1 */ |
| 28 +LOCAL(const unsigned char) mjpg_dc1_bits[] = { |
| 29 + 0x00, 0x03, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, |
| 30 + 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00 |
| 31 +}; |
| 32 + |
| 33 +LOCAL(const unsigned char) mjpg_dc1_huffval[] = { |
| 34 + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, |
| 35 + 0x08, 0x09, 0x0A, 0x0B |
| 36 +}; |
| 37 + |
| 38 +/* AC table 0 */ |
| 39 +LOCAL(const unsigned char) mjpg_ac0_bits[] = { |
| 40 + 0x00, 0x02, 0x01, 0x03, 0x03, 0x02, 0x04, 0x03, |
| 41 + 0x05, 0x05, 0x04, 0x04, 0x00, 0x00, 0x01, 0x7D |
| 42 +}; |
| 43 + |
| 44 +LOCAL(const unsigned char) mjpg_ac0_huffval[] = { |
| 45 + 0x01, 0x02, 0x03, 0x00, 0x04, 0x11, 0x05, 0x12, |
| 46 + 0x21, 0x31, 0x41, 0x06, 0x13, 0x51, 0x61, 0x07, |
| 47 + 0x22, 0x71, 0x14, 0x32, 0x81, 0x91, 0xA1, 0x08, |
| 48 + 0x23, 0x42, 0xB1, 0xC1, 0x15, 0x52, 0xD1, 0xF0, |
| 49 + 0x24, 0x33, 0x62, 0x72, 0x82, 0x09, 0x0A, 0x16, |
| 50 + 0x17, 0x18, 0x19, 0x1A, 0x25, 0x26, 0x27, 0x28, |
| 51 + 0x29, 0x2A, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, |
| 52 + 0x3A, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, |
| 53 + 0x4A, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, |
| 54 + 0x5A, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, |
| 55 + 0x6A, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, |
| 56 + 0x7A, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, |
| 57 + 0x8A, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, 0x98, |
| 58 + 0x99, 0x9A, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7, |
| 59 + 0xA8, 0xA9, 0xAA, 0xB2, 0xB3, 0xB4, 0xB5, 0xB6, |
| 60 + 0xB7, 0xB8, 0xB9, 0xBA, 0xC2, 0xC3, 0xC4, 0xC5, |
| 61 + 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, 0xD2, 0xD3, 0xD4, |
| 62 + 0xD5, 0xD6, 0xD7, 0xD8, 0xD9, 0xDA, 0xE1, 0xE2, |
| 63 + 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, 0xE8, 0xE9, 0xEA, |
| 64 + 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7, 0xF8, |
| 65 + 0xF9, 0xFA |
| 66 +}; |
| 67 + |
| 68 +/* AC table 1 */ |
| 69 +LOCAL(const unsigned char) mjpg_ac1_bits[] = { |
| 70 + 0x00, 0x02, 0x01, 0x02, 0x04, 0x04, 0x03, 0x04, |
| 71 + 0x07, 0x05, 0x04, 0x04, 0x00, 0x01, 0x02, 0x77 |
| 72 +}; |
| 73 + |
| 74 +LOCAL(const unsigned char) mjpg_ac1_huffval[] = { |
| 75 + 0x00, 0x01, 0x02, 0x03, 0x11, 0x04, 0x05, 0x21, |
| 76 + 0x31, 0x06, 0x12, 0x41, 0x51, 0x07, 0x61, 0x71, |
| 77 + 0x13, 0x22, 0x32, 0x81, 0x08, 0x14, 0x42, 0x91, |
| 78 + 0xA1, 0xB1, 0xC1, 0x09, 0x23, 0x33, 0x52, 0xF0, |
| 79 + 0x15, 0x62, 0x72, 0xD1, 0x0A, 0x16, 0x24, 0x34, |
| 80 + 0xE1, 0x25, 0xF1, 0x17, 0x18, 0x19, 0x1A, 0x26, |
| 81 + 0x27, 0x28, 0x29, 0x2A, 0x35, 0x36, 0x37, 0x38, |
| 82 + 0x39, 0x3A, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, |
| 83 + 0x49, 0x4A, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, |
| 84 + 0x59, 0x5A, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, |
| 85 + 0x69, 0x6A, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, |
| 86 + 0x79, 0x7A, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, |
| 87 + 0x88, 0x89, 0x8A, 0x92, 0x93, 0x94, 0x95, 0x96, |
| 88 + 0x97, 0x98, 0x99, 0x9A, 0xA2, 0xA3, 0xA4, 0xA5, |
| 89 + 0xA6, 0xA7, 0xA8, 0xA9, 0xAA, 0xB2, 0xB3, 0xB4, |
| 90 + 0xB5, 0xB6, 0xB7, 0xB8, 0xB9, 0xBA, 0xC2, 0xC3, |
| 91 + 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, 0xD2, |
| 92 + 0xD3, 0xD4, 0xD5, 0xD6, 0xD7, 0xD8, 0xD9, 0xDA, |
| 93 + 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, 0xE8, 0xE9, |
| 94 + 0xEA, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7, 0xF8, |
| 95 + 0xF9, 0xFA |
| 96 +}; |
| 97 + |
| 98 +/* Loads the default Huffman tables used by motion JPEG frames. This function |
| 99 + * just copies the huffman tables suggested in the JPEG standard when we have |
| 100 + * not load them. |
| 101 + */ |
| 102 +LOCAL(void) |
| 103 +mjpg_load_huff_tables (j_decompress_ptr cinfo) |
| 104 +{ |
| 105 + JHUFF_TBL *htblptr; |
| 106 + |
| 107 + if (! cinfo->dc_huff_tbl_ptrs[0]) { |
| 108 + htblptr = jpeg_alloc_huff_table((j_common_ptr) cinfo); |
| 109 + MEMZERO(htblptr, SIZEOF(JHUFF_TBL)); |
| 110 + MEMCOPY(&htblptr->bits[1], mjpg_dc0_bits, SIZEOF(mjpg_dc0_bits)); |
| 111 + MEMCOPY(&htblptr->huffval[0], mjpg_dc0_huffval, SIZEOF(mjpg_dc0_huffval)); |
| 112 + cinfo->dc_huff_tbl_ptrs[0] = htblptr; |
| 113 + } |
| 114 + |
| 115 + if (! cinfo->dc_huff_tbl_ptrs[1]) { |
| 116 + htblptr = jpeg_alloc_huff_table((j_common_ptr) cinfo); |
| 117 + MEMZERO(htblptr, SIZEOF(JHUFF_TBL)); |
| 118 + MEMCOPY(&htblptr->bits[1], mjpg_dc1_bits, SIZEOF(mjpg_dc1_bits)); |
| 119 + MEMCOPY(&htblptr->huffval[0], mjpg_dc1_huffval, SIZEOF(mjpg_dc1_huffval)); |
| 120 + cinfo->dc_huff_tbl_ptrs[1] = htblptr; |
| 121 + } |
| 122 + |
| 123 + if (! cinfo->ac_huff_tbl_ptrs[0]) { |
| 124 + htblptr = jpeg_alloc_huff_table((j_common_ptr) cinfo); |
| 125 + MEMZERO(htblptr, SIZEOF(JHUFF_TBL)); |
| 126 + MEMCOPY(&htblptr->bits[1], mjpg_ac0_bits, SIZEOF(mjpg_ac0_bits)); |
| 127 + MEMCOPY(&htblptr->huffval[0], mjpg_ac0_huffval, SIZEOF(mjpg_ac0_huffval)); |
| 128 + cinfo->ac_huff_tbl_ptrs[0] = htblptr; |
| 129 + } |
| 130 + |
| 131 + if (! cinfo->ac_huff_tbl_ptrs[1]) { |
| 132 + htblptr = jpeg_alloc_huff_table((j_common_ptr) cinfo); |
| 133 + MEMZERO(htblptr, SIZEOF(JHUFF_TBL)); |
| 134 + MEMCOPY(&htblptr->bits[1], mjpg_ac1_bits, SIZEOF(mjpg_ac1_bits)); |
| 135 + MEMCOPY(&htblptr->huffval[0], mjpg_ac1_huffval, SIZEOF(mjpg_ac1_huffval)); |
| 136 + cinfo->ac_huff_tbl_ptrs[1] = htblptr; |
| 137 + } |
| 138 +} |
| 139 + |
| 140 +#else |
| 141 + |
| 142 +#define mjpg_load_huff_tables(cinfo) |
| 143 + |
| 144 +#endif /* MOTION_JPEG_SUPPORTED */ |
| 145 + |
| 146 + |
| 147 /* |
| 148 * Read markers until SOS or EOI. |
| 149 * |
| 150 @@ -1009,6 +1146,7 @@ |
| 151 break; |
19 | 152 |
20 +#ifndef FAR | 153 case M_SOS: |
21 #ifdef NEED_FAR_POINTERS | 154 + mjpg_load_huff_tables(cinfo); |
22 #define FAR far | 155 if (! get_sos(cinfo)) |
23 #else | 156 » return JPEG_SUSPENDED; |
24 #define FAR | 157 cinfo->unread_marker = 0;» /* processed the marker */ |
25 #endif | |
26 +#endif | |
27 | |
28 | |
29 /* | |
30 Index: jpeglib.h | 158 Index: jpeglib.h |
31 =================================================================== | 159 =================================================================== |
32 --- jpeglib.h» (revision 64575) | 160 --- jpeglib.h» (revision 677) |
33 +++ jpeglib.h (working copy) | 161 +++ jpeglib.h (working copy) |
34 @@ -18,6 +18,10 @@ | 162 @@ -15,6 +15,10 @@ |
35 extern "C" { | 163 #ifndef JPEGLIB_H |
36 #endif | 164 #define JPEGLIB_H |
37 | 165 |
38 +/* Begin chromium edits */ | 166 +/* Begin chromium edits */ |
39 +#include "jpeglibmangler.h" | 167 +#include "jpeglibmangler.h" |
40 +/* End chromium edits */ | 168 +/* End chromium edits */ |
41 + | 169 + |
42 /* | 170 /* |
43 * First we include the configuration files that record how this | 171 * First we include the configuration files that record how this |
44 * installation of the JPEG library is set up. jconfig.h can be | 172 * installation of the JPEG library is set up. jconfig.h can be |
45 Index: jpeglibmangler.h | 173 Index: jpeglibmangler.h |
46 =================================================================== | 174 =================================================================== |
47 --- jpeglibmangler.h (revision 0) | 175 --- jpeglibmangler.h (revision 0) |
48 +++ jpeglibmangler.h» (revision 78340) | 176 +++ jpeglibmangler.h» (revision 0) |
49 @@ -0,0 +1,113 @@ | 177 @@ -0,0 +1,113 @@ |
50 +// Copyright (c) 2009 The Chromium Authors. All rights reserved. | 178 +// Copyright (c) 2009 The Chromium Authors. All rights reserved. |
51 +// Use of this source code is governed by a BSD-style license that can be | 179 +// Use of this source code is governed by a BSD-style license that can be |
52 +// found in the LICENSE file. | 180 +// found in the LICENSE file. |
53 + | 181 + |
54 +#ifndef THIRD_PARTY_LIBJPEG_TURBO_JPEGLIBMANGLER_H_ | 182 +#ifndef THIRD_PARTY_LIBJPEG_TURBO_JPEGLIBMANGLER_H_ |
55 +#define THIRD_PARTY_LIBJPEG_TURBO_JPEGLIBMANGLER_H_ | 183 +#define THIRD_PARTY_LIBJPEG_TURBO_JPEGLIBMANGLER_H_ |
56 + | 184 + |
57 +// Mangle all externally visible function names so we can build our own libjpeg | 185 +// Mangle all externally visible function names so we can build our own libjpeg |
58 +// without system libraries trying to use it. | 186 +// without system libraries trying to use it. |
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
153 +#define jpeg_get_small chromium_jpeg_get_small | 281 +#define jpeg_get_small chromium_jpeg_get_small |
154 +#define jpeg_free_small chromium_jpeg_free_small | 282 +#define jpeg_free_small chromium_jpeg_free_small |
155 +#define jpeg_get_large chromium_jpeg_get_large | 283 +#define jpeg_get_large chromium_jpeg_get_large |
156 +#define jpeg_free_large chromium_jpeg_free_large | 284 +#define jpeg_free_large chromium_jpeg_free_large |
157 +#define jpeg_mem_available chromium_jpeg_mem_available | 285 +#define jpeg_mem_available chromium_jpeg_mem_available |
158 +#define jpeg_open_backing_store chromium_jpeg_open_backing_store | 286 +#define jpeg_open_backing_store chromium_jpeg_open_backing_store |
159 +#define jpeg_mem_init chromium_jpeg_mem_init | 287 +#define jpeg_mem_init chromium_jpeg_mem_init |
160 +#define jpeg_mem_term chromium_jpeg_mem_term | 288 +#define jpeg_mem_term chromium_jpeg_mem_term |
161 + | 289 + |
162 +#endif // THIRD_PARTY_LIBJPEG_TURBO_JPEGLIBMANGLER_H_ | 290 +#endif // THIRD_PARTY_LIBJPEG_TURBO_JPEGLIBMANGLER_H_ |
163 Index: jdhuff.c | 291 Index: simd/jcgrass2-64.asm |
164 =================================================================== | 292 =================================================================== |
165 --- jdhuff.c» (revision 64575) | 293 --- simd/jcgrass2-64.asm» (revision 677) |
166 +++ jdhuff.c» (working copy) | 294 +++ simd/jcgrass2-64.asm» (working copy) |
167 @@ -658,7 +658,7 @@ | 295 @@ -30,7 +30,7 @@ |
168 symbol |= GET_BITS(1); \ | 296 » SECTION»SEG_CONST |
169 size++; \ | |
170 } \ | |
171 - symbol = htbl->pub->huffval[ (int) (symbol + htbl->valoffset[size]) ]; \ | |
172 + symbol = htbl->pub->huffval[ (int) (symbol + htbl->valoffset[size]) & 0xFF
]; \ | |
173 } \ | |
174 } | |
175 Index: simd/jcqntmmx.asm | |
176 =================================================================== | |
177 --- simd/jcqntmmx.asm» (revision 64575) | |
178 +++ simd/jcqntmmx.asm» (working copy) | |
179 @@ -35,7 +35,7 @@ | |
180 %define workspace» ebp+16» » ; DCTELEM * workspace | |
181 | |
182 » align» 16 | |
183 -» global» EXTN(jsimd_convsamp_mmx) | |
184 +» global» EXTN(jsimd_convsamp_mmx) PRIVATE | |
185 | |
186 EXTN(jsimd_convsamp_mmx): | |
187 » push» ebp | |
188 @@ -140,7 +140,7 @@ | |
189 %define workspace» ebp+16» » ; DCTELEM * workspace | |
190 | |
191 » align» 16 | |
192 -» global» EXTN(jsimd_quantize_mmx) | |
193 +» global» EXTN(jsimd_quantize_mmx) PRIVATE | |
194 | |
195 EXTN(jsimd_quantize_mmx): | |
196 » push» ebp | |
197 Index: simd/jimmxfst.asm | |
198 =================================================================== | |
199 --- simd/jimmxfst.asm» (revision 64575) | |
200 +++ simd/jimmxfst.asm» (working copy) | |
201 @@ -59,7 +59,7 @@ | |
202 %define CONST_SHIFT (16 - PRE_MULTIPLY_SCALE_BITS - CONST_BITS) | |
203 | 297 |
204 alignz 16 | 298 alignz 16 |
205 -» global» EXTN(jconst_idct_ifast_mmx) | 299 -» global» EXTN(jconst_rgb_gray_convert_sse2) |
206 +» global» EXTN(jconst_idct_ifast_mmx) PRIVATE | 300 +» global» EXTN(jconst_rgb_gray_convert_sse2) PRIVATE |
207 | 301 |
208 EXTN(jconst_idct_ifast_mmx): | 302 EXTN(jconst_rgb_gray_convert_sse2): |
209 | 303 |
210 @@ -94,7 +94,7 @@ | |
211 ; JCOEF workspace[DCTSIZE2] | |
212 | |
213 align 16 | |
214 - global EXTN(jsimd_idct_ifast_mmx) | |
215 + global EXTN(jsimd_idct_ifast_mmx) PRIVATE | |
216 | |
217 EXTN(jsimd_idct_ifast_mmx): | |
218 push ebp | |
219 Index: simd/jfss2fst.asm | |
220 =================================================================== | |
221 --- simd/jfss2fst.asm (revision 64575) | |
222 +++ simd/jfss2fst.asm (working copy) | |
223 @@ -52,7 +52,7 @@ | |
224 %define CONST_SHIFT (16 - PRE_MULTIPLY_SCALE_BITS - CONST_BITS) | |
225 | |
226 alignz 16 | |
227 - global EXTN(jconst_fdct_ifast_sse2) | |
228 + global EXTN(jconst_fdct_ifast_sse2) PRIVATE | |
229 | |
230 EXTN(jconst_fdct_ifast_sse2): | |
231 | |
232 @@ -80,7 +80,7 @@ | |
233 %define WK_NUM 2 | |
234 | |
235 align 16 | |
236 - global EXTN(jsimd_fdct_ifast_sse2) | |
237 + global EXTN(jsimd_fdct_ifast_sse2) PRIVATE | |
238 | |
239 EXTN(jsimd_fdct_ifast_sse2): | |
240 push ebp | |
241 Index: simd/jiss2fst.asm | 304 Index: simd/jiss2fst.asm |
242 =================================================================== | 305 =================================================================== |
243 --- simd/jiss2fst.asm» (revision 64575) | 306 --- simd/jiss2fst.asm» (revision 677) |
244 +++ simd/jiss2fst.asm (working copy) | 307 +++ simd/jiss2fst.asm (working copy) |
245 @@ -59,7 +59,7 @@ | 308 @@ -59,7 +59,7 @@ |
246 %define CONST_SHIFT (16 - PRE_MULTIPLY_SCALE_BITS - CONST_BITS) | 309 %define CONST_SHIFT (16 - PRE_MULTIPLY_SCALE_BITS - CONST_BITS) |
247 | 310 |
248 alignz 16 | 311 alignz 16 |
249 - global EXTN(jconst_idct_ifast_sse2) | 312 - global EXTN(jconst_idct_ifast_sse2) |
250 + global EXTN(jconst_idct_ifast_sse2) PRIVATE | 313 + global EXTN(jconst_idct_ifast_sse2) PRIVATE |
251 | 314 |
252 EXTN(jconst_idct_ifast_sse2): | 315 EXTN(jconst_idct_ifast_sse2): |
253 | 316 |
254 @@ -92,7 +92,7 @@ | 317 @@ -92,7 +92,7 @@ |
255 %define WK_NUM 2 | 318 %define WK_NUM 2 |
256 | 319 |
257 align 16 | 320 align 16 |
258 - global EXTN(jsimd_idct_ifast_sse2) | 321 - global EXTN(jsimd_idct_ifast_sse2) |
259 + global EXTN(jsimd_idct_ifast_sse2) PRIVATE | 322 + global EXTN(jsimd_idct_ifast_sse2) PRIVATE |
260 | 323 |
261 EXTN(jsimd_idct_ifast_sse2): | 324 EXTN(jsimd_idct_ifast_sse2): |
262 push ebp | 325 push ebp |
263 Index: simd/jdcolss2-64.asm | |
264 =================================================================== | |
265 --- simd/jdcolss2-64.asm (revision 64575) | |
266 +++ simd/jdcolss2-64.asm (working copy) | |
267 @@ -35,7 +35,7 @@ | |
268 SECTION SEG_CONST | |
269 | |
270 alignz 16 | |
271 - global EXTN(jconst_ycc_rgb_convert_sse2) | |
272 + global EXTN(jconst_ycc_rgb_convert_sse2) PRIVATE | |
273 | |
274 EXTN(jconst_ycc_rgb_convert_sse2): | |
275 | |
276 Index: simd/jf3dnflt.asm | |
277 =================================================================== | |
278 --- simd/jf3dnflt.asm (revision 64575) | |
279 +++ simd/jf3dnflt.asm (working copy) | |
280 @@ -27,7 +27,7 @@ | |
281 SECTION SEG_CONST | |
282 | |
283 alignz 16 | |
284 - global EXTN(jconst_fdct_float_3dnow) | |
285 + global EXTN(jconst_fdct_float_3dnow) PRIVATE | |
286 | |
287 EXTN(jconst_fdct_float_3dnow): | |
288 | |
289 @@ -55,7 +55,7 @@ | |
290 %define WK_NUM 2 | |
291 | |
292 align 16 | |
293 - global EXTN(jsimd_fdct_float_3dnow) | |
294 + global EXTN(jsimd_fdct_float_3dnow) PRIVATE | |
295 | |
296 EXTN(jsimd_fdct_float_3dnow): | |
297 push ebp | |
298 Index: simd/jcclrss2-64.asm | 326 Index: simd/jcclrss2-64.asm |
299 =================================================================== | 327 =================================================================== |
300 --- simd/jcclrss2-64.asm» (revision 64575) | 328 --- simd/jcclrss2-64.asm» (revision 677) |
301 +++ simd/jcclrss2-64.asm (working copy) | 329 +++ simd/jcclrss2-64.asm (working copy) |
302 @@ -17,8 +17,12 @@ | 330 @@ -37,7 +37,7 @@ |
303 %include "jcolsamp.inc" | |
304 | |
305 ; -------------------------------------------------------------------------- | |
306 +%ifndef NEED_SECTION | |
307 +%define NEED_SECTION | |
308 » SECTION»SEG_TEXT | |
309 » BITS» 64 | |
310 +%endif | |
311 + | |
312 ; | |
313 ; Convert some rows of samples to the output colorspace. | |
314 ; | |
315 @@ -39,7 +43,7 @@ | |
316 | 331 |
317 align 16 | 332 align 16 |
318 | 333 |
319 - global EXTN(jsimd_rgb_ycc_convert_sse2) | 334 - global EXTN(jsimd_rgb_ycc_convert_sse2) |
320 + global EXTN(jsimd_rgb_ycc_convert_sse2) PRIVATE | 335 + global EXTN(jsimd_rgb_ycc_convert_sse2) PRIVATE |
321 | 336 |
322 EXTN(jsimd_rgb_ycc_convert_sse2): | 337 EXTN(jsimd_rgb_ycc_convert_sse2): |
323 push rbp | 338 push rbp |
324 Index: simd/jiss2red-64.asm | 339 Index: simd/jiss2red-64.asm |
325 =================================================================== | 340 =================================================================== |
326 --- simd/jiss2red-64.asm» (revision 64575) | 341 --- simd/jiss2red-64.asm» (revision 677) |
327 +++ simd/jiss2red-64.asm (working copy) | 342 +++ simd/jiss2red-64.asm (working copy) |
328 @@ -73,7 +73,7 @@ | 343 @@ -73,7 +73,7 @@ |
329 SECTION SEG_CONST | 344 SECTION SEG_CONST |
330 | 345 |
331 alignz 16 | 346 alignz 16 |
332 - global EXTN(jconst_idct_red_sse2) | 347 - global EXTN(jconst_idct_red_sse2) |
333 + global EXTN(jconst_idct_red_sse2) PRIVATE | 348 + global EXTN(jconst_idct_red_sse2) PRIVATE |
334 | 349 |
335 EXTN(jconst_idct_red_sse2): | 350 EXTN(jconst_idct_red_sse2): |
336 | 351 |
337 @@ -114,7 +114,7 @@ | 352 @@ -114,7 +114,7 @@ |
338 %define WK_NUM 2 | 353 %define WK_NUM 2 |
339 | 354 |
340 align 16 | 355 align 16 |
341 - global EXTN(jsimd_idct_4x4_sse2) | 356 - global EXTN(jsimd_idct_4x4_sse2) |
342 + global EXTN(jsimd_idct_4x4_sse2) PRIVATE | 357 + global EXTN(jsimd_idct_4x4_sse2) PRIVATE |
343 | 358 |
344 EXTN(jsimd_idct_4x4_sse2): | 359 EXTN(jsimd_idct_4x4_sse2): |
345 push rbp | 360 push rbp |
346 @@ -413,7 +413,7 @@ | 361 @@ -413,7 +413,7 @@ |
347 ; r13 = JDIMENSION output_col | 362 ; r13 = JDIMENSION output_col |
348 | 363 |
349 align 16 | 364 align 16 |
350 - global EXTN(jsimd_idct_2x2_sse2) | 365 - global EXTN(jsimd_idct_2x2_sse2) |
351 + global EXTN(jsimd_idct_2x2_sse2) PRIVATE | 366 + global EXTN(jsimd_idct_2x2_sse2) PRIVATE |
352 | 367 |
353 EXTN(jsimd_idct_2x2_sse2): | 368 EXTN(jsimd_idct_2x2_sse2): |
354 push rbp | 369 push rbp |
355 Index: simd/jdsamss2-64.asm | |
356 =================================================================== | |
357 --- simd/jdsamss2-64.asm (revision 64575) | |
358 +++ simd/jdsamss2-64.asm (working copy) | |
359 @@ -23,7 +23,7 @@ | |
360 SECTION SEG_CONST | |
361 | |
362 alignz 16 | |
363 - global EXTN(jconst_fancy_upsample_sse2) | |
364 + global EXTN(jconst_fancy_upsample_sse2) PRIVATE | |
365 | |
366 EXTN(jconst_fancy_upsample_sse2): | |
367 | |
368 @@ -59,7 +59,7 @@ | |
369 ; r13 = JSAMPARRAY * output_data_ptr | |
370 | |
371 align 16 | |
372 - global EXTN(jsimd_h2v1_fancy_upsample_sse2) | |
373 + global EXTN(jsimd_h2v1_fancy_upsample_sse2) PRIVATE | |
374 | |
375 EXTN(jsimd_h2v1_fancy_upsample_sse2): | |
376 push rbp | |
377 @@ -201,7 +201,7 @@ | |
378 %define WK_NUM 4 | |
379 | |
380 align 16 | |
381 - global EXTN(jsimd_h2v2_fancy_upsample_sse2) | |
382 + global EXTN(jsimd_h2v2_fancy_upsample_sse2) PRIVATE | |
383 | |
384 EXTN(jsimd_h2v2_fancy_upsample_sse2): | |
385 push rbp | |
386 @@ -498,7 +498,7 @@ | |
387 ; r13 = JSAMPARRAY * output_data_ptr | |
388 | |
389 align 16 | |
390 - global EXTN(jsimd_h2v1_upsample_sse2) | |
391 + global EXTN(jsimd_h2v1_upsample_sse2) PRIVATE | |
392 | |
393 EXTN(jsimd_h2v1_upsample_sse2): | |
394 push rbp | |
395 @@ -587,7 +587,7 @@ | |
396 ; r13 = JSAMPARRAY * output_data_ptr | |
397 | |
398 align 16 | |
399 - global EXTN(jsimd_h2v2_upsample_sse2) | |
400 + global EXTN(jsimd_h2v2_upsample_sse2) PRIVATE | |
401 | |
402 EXTN(jsimd_h2v2_upsample_sse2): | |
403 push rbp | |
404 Index: simd/ji3dnflt.asm | 370 Index: simd/ji3dnflt.asm |
405 =================================================================== | 371 =================================================================== |
406 --- simd/ji3dnflt.asm» (revision 64575) | 372 --- simd/ji3dnflt.asm» (revision 677) |
407 +++ simd/ji3dnflt.asm (working copy) | 373 +++ simd/ji3dnflt.asm (working copy) |
408 @@ -27,7 +27,7 @@ | 374 @@ -27,7 +27,7 @@ |
409 SECTION SEG_CONST | 375 SECTION SEG_CONST |
410 | 376 |
411 alignz 16 | 377 alignz 16 |
412 - global EXTN(jconst_idct_float_3dnow) | 378 - global EXTN(jconst_idct_float_3dnow) |
413 + global EXTN(jconst_idct_float_3dnow) PRIVATE | 379 + global EXTN(jconst_idct_float_3dnow) PRIVATE |
414 | 380 |
415 EXTN(jconst_idct_float_3dnow): | 381 EXTN(jconst_idct_float_3dnow): |
416 | 382 |
417 @@ -63,7 +63,7 @@ | 383 @@ -63,7 +63,7 @@ |
418 ; FAST_FLOAT workspace[DCTSIZE2] | 384 ; FAST_FLOAT workspace[DCTSIZE2] |
419 | 385 |
420 align 16 | 386 align 16 |
421 - global EXTN(jsimd_idct_float_3dnow) | 387 - global EXTN(jsimd_idct_float_3dnow) |
422 + global EXTN(jsimd_idct_float_3dnow) PRIVATE | 388 + global EXTN(jsimd_idct_float_3dnow) PRIVATE |
423 | 389 |
424 EXTN(jsimd_idct_float_3dnow): | 390 EXTN(jsimd_idct_float_3dnow): |
425 push ebp | 391 push ebp |
426 Index: simd/jsimdcpu.asm | 392 Index: simd/jsimdcpu.asm |
427 =================================================================== | 393 =================================================================== |
428 --- simd/jsimdcpu.asm» (revision 64575) | 394 --- simd/jsimdcpu.asm» (revision 677) |
429 +++ simd/jsimdcpu.asm (working copy) | 395 +++ simd/jsimdcpu.asm (working copy) |
430 @@ -29,7 +29,7 @@ | 396 @@ -29,7 +29,7 @@ |
431 ; | 397 ; |
432 | 398 |
433 align 16 | 399 align 16 |
434 - global EXTN(jpeg_simd_cpu_support) | 400 - global EXTN(jpeg_simd_cpu_support) |
435 + global EXTN(jpeg_simd_cpu_support) PRIVATE | 401 + global EXTN(jpeg_simd_cpu_support) PRIVATE |
436 | 402 |
437 EXTN(jpeg_simd_cpu_support): | 403 EXTN(jpeg_simd_cpu_support): |
438 push ebx | 404 push ebx |
439 Index: simd/jcsammmx.asm | 405 Index: simd/jdmerss2-64.asm |
440 =================================================================== | 406 =================================================================== |
441 --- simd/jcsammmx.asm» (revision 64575) | 407 --- simd/jdmerss2-64.asm» (revision 677) |
442 +++ simd/jcsammmx.asm» (working copy) | 408 +++ simd/jdmerss2-64.asm» (working copy) |
443 @@ -40,7 +40,7 @@ | 409 @@ -35,7 +35,7 @@ |
444 %define output_data(b)»(b)+28» ; JSAMPARRAY output_data | 410 » SECTION»SEG_CONST |
445 | 411 |
446 » align» 16 | 412 » alignz» 16 |
447 -» global» EXTN(jsimd_h2v1_downsample_mmx) | 413 -» global» EXTN(jconst_merged_upsample_sse2) |
448 +» global» EXTN(jsimd_h2v1_downsample_mmx) PRIVATE | 414 +» global» EXTN(jconst_merged_upsample_sse2) PRIVATE |
449 | 415 |
450 EXTN(jsimd_h2v1_downsample_mmx): | 416 EXTN(jconst_merged_upsample_sse2): |
451 » push» ebp | |
452 @@ -182,7 +182,7 @@ | |
453 %define output_data(b)»(b)+28» ; JSAMPARRAY output_data | |
454 | 417 |
455 align 16 | |
456 - global EXTN(jsimd_h2v2_downsample_mmx) | |
457 + global EXTN(jsimd_h2v2_downsample_mmx) PRIVATE | |
458 | |
459 EXTN(jsimd_h2v2_downsample_mmx): | |
460 push ebp | |
461 Index: simd/jdsammmx.asm | 418 Index: simd/jdsammmx.asm |
462 =================================================================== | 419 =================================================================== |
463 --- simd/jdsammmx.asm» (revision 64575) | 420 --- simd/jdsammmx.asm» (revision 677) |
464 +++ simd/jdsammmx.asm (working copy) | 421 +++ simd/jdsammmx.asm (working copy) |
465 @@ -22,7 +22,7 @@ | 422 @@ -22,7 +22,7 @@ |
466 SECTION SEG_CONST | 423 SECTION SEG_CONST |
467 | 424 |
468 alignz 16 | 425 alignz 16 |
469 - global EXTN(jconst_fancy_upsample_mmx) | 426 - global EXTN(jconst_fancy_upsample_mmx) |
470 + global EXTN(jconst_fancy_upsample_mmx) PRIVATE | 427 + global EXTN(jconst_fancy_upsample_mmx) PRIVATE |
471 | 428 |
472 EXTN(jconst_fancy_upsample_mmx): | 429 EXTN(jconst_fancy_upsample_mmx): |
473 | 430 |
(...skipping 26 matching lines...) Expand all Loading... |
500 push ebp | 457 push ebp |
501 @@ -643,7 +643,7 @@ | 458 @@ -643,7 +643,7 @@ |
502 %define output_data_ptr(b) (b)+20 ; JSAMPARRAY * output_data_ptr | 459 %define output_data_ptr(b) (b)+20 ; JSAMPARRAY * output_data_ptr |
503 | 460 |
504 align 16 | 461 align 16 |
505 - global EXTN(jsimd_h2v2_upsample_mmx) | 462 - global EXTN(jsimd_h2v2_upsample_mmx) |
506 + global EXTN(jsimd_h2v2_upsample_mmx) PRIVATE | 463 + global EXTN(jsimd_h2v2_upsample_mmx) PRIVATE |
507 | 464 |
508 EXTN(jsimd_h2v2_upsample_mmx): | 465 EXTN(jsimd_h2v2_upsample_mmx): |
509 push ebp | 466 push ebp |
510 Index: simd/jdmerss2-64.asm | |
511 =================================================================== | |
512 --- simd/jdmerss2-64.asm (revision 64575) | |
513 +++ simd/jdmerss2-64.asm (working copy) | |
514 @@ -35,7 +35,7 @@ | |
515 SECTION SEG_CONST | |
516 | |
517 alignz 16 | |
518 - global EXTN(jconst_merged_upsample_sse2) | |
519 + global EXTN(jconst_merged_upsample_sse2) PRIVATE | |
520 | |
521 EXTN(jconst_merged_upsample_sse2): | |
522 | |
523 Index: simd/jcqnts2f-64.asm | |
524 =================================================================== | |
525 --- simd/jcqnts2f-64.asm (revision 64575) | |
526 +++ simd/jcqnts2f-64.asm (working copy) | |
527 @@ -36,7 +36,7 @@ | |
528 ; r12 = FAST_FLOAT * workspace | |
529 | |
530 align 16 | |
531 - global EXTN(jsimd_convsamp_float_sse2) | |
532 + global EXTN(jsimd_convsamp_float_sse2) PRIVATE | |
533 | |
534 EXTN(jsimd_convsamp_float_sse2): | |
535 push rbp | |
536 @@ -110,7 +110,7 @@ | |
537 ; r12 = FAST_FLOAT * workspace | |
538 | |
539 align 16 | |
540 - global EXTN(jsimd_quantize_float_sse2) | |
541 + global EXTN(jsimd_quantize_float_sse2) PRIVATE | |
542 | |
543 EXTN(jsimd_quantize_float_sse2): | |
544 push rbp | |
545 Index: simd/jcqnt3dn.asm | |
546 =================================================================== | |
547 --- simd/jcqnt3dn.asm (revision 64575) | |
548 +++ simd/jcqnt3dn.asm (working copy) | |
549 @@ -35,7 +35,7 @@ | |
550 %define workspace ebp+16 ; FAST_FLOAT * workspace | |
551 | |
552 align 16 | |
553 - global EXTN(jsimd_convsamp_float_3dnow) | |
554 + global EXTN(jsimd_convsamp_float_3dnow) PRIVATE | |
555 | |
556 EXTN(jsimd_convsamp_float_3dnow): | |
557 push ebp | |
558 @@ -138,7 +138,7 @@ | |
559 %define workspace ebp+16 ; FAST_FLOAT * workspace | |
560 | |
561 align 16 | |
562 - global EXTN(jsimd_quantize_float_3dnow) | |
563 + global EXTN(jsimd_quantize_float_3dnow) PRIVATE | |
564 | |
565 EXTN(jsimd_quantize_float_3dnow): | |
566 push ebp | |
567 Index: simd/jcsamss2.asm | |
568 =================================================================== | |
569 --- simd/jcsamss2.asm (revision 64575) | |
570 +++ simd/jcsamss2.asm (working copy) | |
571 @@ -40,7 +40,7 @@ | |
572 %define output_data(b) (b)+28 ; JSAMPARRAY output_data | |
573 | |
574 align 16 | |
575 - global EXTN(jsimd_h2v1_downsample_sse2) | |
576 + global EXTN(jsimd_h2v1_downsample_sse2) PRIVATE | |
577 | |
578 EXTN(jsimd_h2v1_downsample_sse2): | |
579 push ebp | |
580 @@ -195,7 +195,7 @@ | |
581 %define output_data(b) (b)+28 ; JSAMPARRAY output_data | |
582 | |
583 align 16 | |
584 - global EXTN(jsimd_h2v2_downsample_sse2) | |
585 + global EXTN(jsimd_h2v2_downsample_sse2) PRIVATE | |
586 | |
587 EXTN(jsimd_h2v2_downsample_sse2): | |
588 push ebp | |
589 Index: simd/jdmrgmmx.asm | 467 Index: simd/jdmrgmmx.asm |
590 =================================================================== | 468 =================================================================== |
591 --- simd/jdmrgmmx.asm» (revision 64575) | 469 --- simd/jdmrgmmx.asm» (revision 677) |
592 +++ simd/jdmrgmmx.asm (working copy) | 470 +++ simd/jdmrgmmx.asm (working copy) |
593 @@ -19,8 +19,12 @@ | 471 @@ -40,7 +40,7 @@ |
594 %include "jcolsamp.inc" | |
595 | |
596 ; -------------------------------------------------------------------------- | |
597 +%ifndef NEED_SECTION | |
598 +%define NEED_SECTION | |
599 » SECTION»SEG_TEXT | |
600 » BITS» 32 | |
601 +%endif | |
602 + | |
603 ; | |
604 ; Upsample and color convert for the case of 2:1 horizontal and 1:1 vertical. | |
605 ; | |
606 @@ -42,7 +46,7 @@ | |
607 %define gotptr wk(0)-SIZEOF_POINTER ; void * gotptr | 472 %define gotptr wk(0)-SIZEOF_POINTER ; void * gotptr |
608 | 473 |
609 align 16 | 474 align 16 |
610 - global EXTN(jsimd_h2v1_merged_upsample_mmx) | 475 - global EXTN(jsimd_h2v1_merged_upsample_mmx) |
611 + global EXTN(jsimd_h2v1_merged_upsample_mmx) PRIVATE | 476 + global EXTN(jsimd_h2v1_merged_upsample_mmx) PRIVATE |
612 | 477 |
613 EXTN(jsimd_h2v1_merged_upsample_mmx): | 478 EXTN(jsimd_h2v1_merged_upsample_mmx): |
614 push ebp | 479 push ebp |
615 @@ -411,7 +415,7 @@ | 480 @@ -409,7 +409,7 @@ |
616 %define output_buf(b) (b)+20 ; JSAMPARRAY output_buf | 481 %define output_buf(b) (b)+20 ; JSAMPARRAY output_buf |
617 | 482 |
618 align 16 | 483 align 16 |
619 - global EXTN(jsimd_h2v2_merged_upsample_mmx) | 484 - global EXTN(jsimd_h2v2_merged_upsample_mmx) |
620 + global EXTN(jsimd_h2v2_merged_upsample_mmx) PRIVATE | 485 + global EXTN(jsimd_h2v2_merged_upsample_mmx) PRIVATE |
621 | 486 |
622 EXTN(jsimd_h2v2_merged_upsample_mmx): | 487 EXTN(jsimd_h2v2_merged_upsample_mmx): |
623 push ebp | 488 push ebp |
624 Index: simd/jdsamss2.asm | 489 Index: simd/jdsamss2.asm |
625 =================================================================== | 490 =================================================================== |
626 --- simd/jdsamss2.asm» (revision 64575) | 491 --- simd/jdsamss2.asm» (revision 677) |
627 +++ simd/jdsamss2.asm (working copy) | 492 +++ simd/jdsamss2.asm (working copy) |
628 @@ -22,7 +22,7 @@ | 493 @@ -22,7 +22,7 @@ |
629 SECTION SEG_CONST | 494 SECTION SEG_CONST |
630 | 495 |
631 alignz 16 | 496 alignz 16 |
632 - global EXTN(jconst_fancy_upsample_sse2) | 497 - global EXTN(jconst_fancy_upsample_sse2) |
633 + global EXTN(jconst_fancy_upsample_sse2) PRIVATE | 498 + global EXTN(jconst_fancy_upsample_sse2) PRIVATE |
634 | 499 |
635 EXTN(jconst_fancy_upsample_sse2): | 500 EXTN(jconst_fancy_upsample_sse2): |
636 | 501 |
(...skipping 28 matching lines...) Expand all Loading... |
665 %define output_data_ptr(b) (b)+20 ; JSAMPARRAY * output_data_ptr | 530 %define output_data_ptr(b) (b)+20 ; JSAMPARRAY * output_data_ptr |
666 | 531 |
667 align 16 | 532 align 16 |
668 - global EXTN(jsimd_h2v2_upsample_sse2) | 533 - global EXTN(jsimd_h2v2_upsample_sse2) |
669 + global EXTN(jsimd_h2v2_upsample_sse2) PRIVATE | 534 + global EXTN(jsimd_h2v2_upsample_sse2) PRIVATE |
670 | 535 |
671 EXTN(jsimd_h2v2_upsample_sse2): | 536 EXTN(jsimd_h2v2_upsample_sse2): |
672 push ebp | 537 push ebp |
673 Index: simd/jiss2flt-64.asm | 538 Index: simd/jiss2flt-64.asm |
674 =================================================================== | 539 =================================================================== |
675 --- simd/jiss2flt-64.asm» (revision 64575) | 540 --- simd/jiss2flt-64.asm» (revision 677) |
676 +++ simd/jiss2flt-64.asm (working copy) | 541 +++ simd/jiss2flt-64.asm (working copy) |
677 @@ -38,7 +38,7 @@ | 542 @@ -38,7 +38,7 @@ |
678 SECTION SEG_CONST | 543 SECTION SEG_CONST |
679 | 544 |
680 alignz 16 | 545 alignz 16 |
681 - global EXTN(jconst_idct_float_sse2) | 546 - global EXTN(jconst_idct_float_sse2) |
682 + global EXTN(jconst_idct_float_sse2) PRIVATE | 547 + global EXTN(jconst_idct_float_sse2) PRIVATE |
683 | 548 |
684 EXTN(jconst_idct_float_sse2): | 549 EXTN(jconst_idct_float_sse2): |
685 | 550 |
686 @@ -74,7 +74,7 @@ | 551 @@ -74,7 +74,7 @@ |
687 ; FAST_FLOAT workspace[DCTSIZE2] | 552 ; FAST_FLOAT workspace[DCTSIZE2] |
688 | 553 |
689 align 16 | 554 align 16 |
690 - global EXTN(jsimd_idct_float_sse2) | 555 - global EXTN(jsimd_idct_float_sse2) |
691 + global EXTN(jsimd_idct_float_sse2) PRIVATE | 556 + global EXTN(jsimd_idct_float_sse2) PRIVATE |
692 | 557 |
693 EXTN(jsimd_idct_float_sse2): | 558 EXTN(jsimd_idct_float_sse2): |
694 push rbp | 559 push rbp |
695 Index: simd/jfss2int-64.asm | 560 Index: simd/jfss2int-64.asm |
696 =================================================================== | 561 =================================================================== |
697 --- simd/jfss2int-64.asm» (revision 64575) | 562 --- simd/jfss2int-64.asm» (revision 677) |
698 +++ simd/jfss2int-64.asm (working copy) | 563 +++ simd/jfss2int-64.asm (working copy) |
699 @@ -67,7 +67,7 @@ | 564 @@ -67,7 +67,7 @@ |
700 SECTION SEG_CONST | 565 SECTION SEG_CONST |
701 | 566 |
702 alignz 16 | 567 alignz 16 |
703 - global EXTN(jconst_fdct_islow_sse2) | 568 - global EXTN(jconst_fdct_islow_sse2) |
704 + global EXTN(jconst_fdct_islow_sse2) PRIVATE | 569 + global EXTN(jconst_fdct_islow_sse2) PRIVATE |
705 | 570 |
706 EXTN(jconst_fdct_islow_sse2): | 571 EXTN(jconst_fdct_islow_sse2): |
707 | 572 |
708 @@ -101,7 +101,7 @@ | 573 @@ -101,7 +101,7 @@ |
709 %define WK_NUM 6 | 574 %define WK_NUM 6 |
710 | 575 |
711 align 16 | 576 align 16 |
712 - global EXTN(jsimd_fdct_islow_sse2) | 577 - global EXTN(jsimd_fdct_islow_sse2) |
713 + global EXTN(jsimd_fdct_islow_sse2) PRIVATE | 578 + global EXTN(jsimd_fdct_islow_sse2) PRIVATE |
714 | 579 |
715 EXTN(jsimd_fdct_islow_sse2): | 580 EXTN(jsimd_fdct_islow_sse2): |
716 push rbp | 581 push rbp |
717 Index: simd/jcqnts2f.asm | 582 Index: simd/jcqnts2f.asm |
718 =================================================================== | 583 =================================================================== |
719 --- simd/jcqnts2f.asm» (revision 64575) | 584 --- simd/jcqnts2f.asm» (revision 677) |
720 +++ simd/jcqnts2f.asm (working copy) | 585 +++ simd/jcqnts2f.asm (working copy) |
721 @@ -35,7 +35,7 @@ | 586 @@ -35,7 +35,7 @@ |
722 %define workspace ebp+16 ; FAST_FLOAT * workspace | 587 %define workspace ebp+16 ; FAST_FLOAT * workspace |
723 | 588 |
724 align 16 | 589 align 16 |
725 - global EXTN(jsimd_convsamp_float_sse2) | 590 - global EXTN(jsimd_convsamp_float_sse2) |
726 + global EXTN(jsimd_convsamp_float_sse2) PRIVATE | 591 + global EXTN(jsimd_convsamp_float_sse2) PRIVATE |
727 | 592 |
728 EXTN(jsimd_convsamp_float_sse2): | 593 EXTN(jsimd_convsamp_float_sse2): |
729 push ebp | 594 push ebp |
730 @@ -115,7 +115,7 @@ | 595 @@ -115,7 +115,7 @@ |
731 %define workspace ebp+16 ; FAST_FLOAT * workspace | 596 %define workspace ebp+16 ; FAST_FLOAT * workspace |
732 | 597 |
733 align 16 | 598 align 16 |
734 - global EXTN(jsimd_quantize_float_sse2) | 599 - global EXTN(jsimd_quantize_float_sse2) |
735 + global EXTN(jsimd_quantize_float_sse2) PRIVATE | 600 + global EXTN(jsimd_quantize_float_sse2) PRIVATE |
736 | 601 |
737 EXTN(jsimd_quantize_float_sse2): | 602 EXTN(jsimd_quantize_float_sse2): |
738 push ebp | 603 push ebp |
739 Index: simd/jdmrgss2.asm | 604 Index: simd/jdmrgss2.asm |
740 =================================================================== | 605 =================================================================== |
741 --- simd/jdmrgss2.asm» (revision 64575) | 606 --- simd/jdmrgss2.asm» (revision 677) |
742 +++ simd/jdmrgss2.asm (working copy) | 607 +++ simd/jdmrgss2.asm (working copy) |
743 @@ -19,8 +19,12 @@ | 608 @@ -40,7 +40,7 @@ |
744 %include "jcolsamp.inc" | |
745 » » » » | |
746 ; -------------------------------------------------------------------------- | |
747 +%ifndef NEED_SECTION | |
748 +%define NEED_SECTION | |
749 » SECTION»SEG_TEXT | |
750 » BITS» 32 | |
751 +%endif | |
752 + | |
753 ; | |
754 ; Upsample and color convert for the case of 2:1 horizontal and 1:1 vertical. | |
755 ; | |
756 @@ -42,7 +46,7 @@ | |
757 %define gotptr wk(0)-SIZEOF_POINTER ; void * gotptr | 609 %define gotptr wk(0)-SIZEOF_POINTER ; void * gotptr |
758 | 610 |
759 align 16 | 611 align 16 |
760 - global EXTN(jsimd_h2v1_merged_upsample_sse2) | 612 - global EXTN(jsimd_h2v1_merged_upsample_sse2) |
761 + global EXTN(jsimd_h2v1_merged_upsample_sse2) PRIVATE | 613 + global EXTN(jsimd_h2v1_merged_upsample_sse2) PRIVATE |
762 | 614 |
763 EXTN(jsimd_h2v1_merged_upsample_sse2): | 615 EXTN(jsimd_h2v1_merged_upsample_sse2): |
764 push ebp | 616 push ebp |
765 @@ -309,6 +313,41 @@ | 617 @@ -307,6 +307,41 @@ |
766 movdqa xmmA,xmmD | 618 movdqa xmmA,xmmD |
767 sub ecx, byte SIZEOF_XMMWORD | 619 sub ecx, byte SIZEOF_XMMWORD |
768 .column_st15: | 620 .column_st15: |
769 +%ifdef STRICT_MEMORY_ACCESS | 621 +%ifdef STRICT_MEMORY_ACCESS |
770 + ; Store the lower 8 bytes of xmmA to the output when it has enough | 622 + ; Store the lower 8 bytes of xmmA to the output when it has enough |
771 + ; space. | 623 + ; space. |
772 + cmp ecx, byte SIZEOF_MMWORD | 624 + cmp ecx, byte SIZEOF_MMWORD |
773 + jb short .column_st7 | 625 + jb short .column_st7 |
774 + movq MMWORD [edi], xmmA | 626 + movq MMWORD [edi], xmmA |
775 + add edi, byte SIZEOF_MMWORD | 627 + add edi, byte SIZEOF_MMWORD |
(...skipping 21 matching lines...) Expand all Loading... |
797 +.column_st1: | 649 +.column_st1: |
798 + ; Store the lower 1 byte of eax to the output when it has enough | 650 + ; Store the lower 1 byte of eax to the output when it has enough |
799 + ; space. | 651 + ; space. |
800 + test ecx, ecx | 652 + test ecx, ecx |
801 + jz short .endcolumn | 653 + jz short .endcolumn |
802 + mov BYTE [edi], al | 654 + mov BYTE [edi], al |
803 +%else | 655 +%else |
804 mov eax,ecx | 656 mov eax,ecx |
805 xor ecx, byte 0x0F | 657 xor ecx, byte 0x0F |
806 shl ecx, 2 | 658 shl ecx, 2 |
807 @@ -348,6 +387,7 @@ | 659 @@ -346,6 +381,7 @@ |
808 por xmmE,xmmC | 660 por xmmE,xmmC |
809 .adj0: ; ---------------- | 661 .adj0: ; ---------------- |
810 maskmovdqu xmmA,xmmE ; movntdqu XMMWORD [edi], xmmA | 662 maskmovdqu xmmA,xmmE ; movntdqu XMMWORD [edi], xmmA |
811 +%endif ; STRICT_MEMORY_ACCESS ; --------------- | 663 +%endif ; STRICT_MEMORY_ACCESS ; --------------- |
812 | 664 |
813 %else ; RGB_PIXELSIZE == 4 ; ----------- | 665 %else ; RGB_PIXELSIZE == 4 ; ----------- |
814 | 666 |
815 @@ -436,6 +476,22 @@ | 667 @@ -434,6 +470,22 @@ |
816 movdqa xmmA,xmmD | 668 movdqa xmmA,xmmD |
817 sub ecx, byte SIZEOF_XMMWORD/4 | 669 sub ecx, byte SIZEOF_XMMWORD/4 |
818 .column_st15: | 670 .column_st15: |
819 +%ifdef STRICT_MEMORY_ACCESS | 671 +%ifdef STRICT_MEMORY_ACCESS |
820 + ; Store two pixels (8 bytes) of xmmA to the output when it has enough | 672 + ; Store two pixels (8 bytes) of xmmA to the output when it has enough |
821 + ; space. | 673 + ; space. |
822 + cmp ecx, byte SIZEOF_XMMWORD/8 | 674 + cmp ecx, byte SIZEOF_XMMWORD/8 |
823 + jb short .column_st7 | 675 + jb short .column_st7 |
824 + movq MMWORD [edi], xmmA | 676 + movq MMWORD [edi], xmmA |
825 + add edi, byte SIZEOF_XMMWORD/8*4 | 677 + add edi, byte SIZEOF_XMMWORD/8*4 |
826 + sub ecx, byte SIZEOF_XMMWORD/8 | 678 + sub ecx, byte SIZEOF_XMMWORD/8 |
827 + psrldq xmmA, SIZEOF_XMMWORD/8*4 | 679 + psrldq xmmA, SIZEOF_XMMWORD/8*4 |
828 +.column_st7: | 680 +.column_st7: |
829 + ; Store one pixel (4 bytes) of xmmA to the output when it has enough | 681 + ; Store one pixel (4 bytes) of xmmA to the output when it has enough |
830 + ; space. | 682 + ; space. |
831 + test ecx, ecx | 683 + test ecx, ecx |
832 + jz short .endcolumn | 684 + jz short .endcolumn |
833 + movd DWORD [edi], xmmA | 685 + movd DWORD [edi], xmmA |
834 +%else | 686 +%else |
835 cmp ecx, byte SIZEOF_XMMWORD/16 | 687 cmp ecx, byte SIZEOF_XMMWORD/16 |
836 jb short .endcolumn | 688 jb short .endcolumn |
837 mov eax,ecx | 689 mov eax,ecx |
838 @@ -475,6 +531,7 @@ | 690 @@ -473,6 +525,7 @@ |
839 por xmmE,xmmG | 691 por xmmE,xmmG |
840 .adj0: ; ---------------- | 692 .adj0: ; ---------------- |
841 maskmovdqu xmmA,xmmE ; movntdqu XMMWORD [edi], xmmA | 693 maskmovdqu xmmA,xmmE ; movntdqu XMMWORD [edi], xmmA |
842 +%endif ; STRICT_MEMORY_ACCESS ; --------------- | 694 +%endif ; STRICT_MEMORY_ACCESS ; --------------- |
843 | 695 |
844 %endif ; RGB_PIXELSIZE ; --------------- | 696 %endif ; RGB_PIXELSIZE ; --------------- |
845 | 697 |
846 @@ -509,7 +566,7 @@ | 698 @@ -507,7 +560,7 @@ |
847 %define output_buf(b) (b)+20 ; JSAMPARRAY output_buf | 699 %define output_buf(b) (b)+20 ; JSAMPARRAY output_buf |
848 | 700 |
849 align 16 | 701 align 16 |
850 - global EXTN(jsimd_h2v2_merged_upsample_sse2) | 702 - global EXTN(jsimd_h2v2_merged_upsample_sse2) |
851 + global EXTN(jsimd_h2v2_merged_upsample_sse2) PRIVATE | 703 + global EXTN(jsimd_h2v2_merged_upsample_sse2) PRIVATE |
852 | 704 |
853 EXTN(jsimd_h2v2_merged_upsample_sse2): | 705 EXTN(jsimd_h2v2_merged_upsample_sse2): |
854 push ebp | 706 push ebp |
855 Index: simd/jfmmxint.asm | 707 Index: simd/jfmmxint.asm |
856 =================================================================== | 708 =================================================================== |
857 --- simd/jfmmxint.asm» (revision 64575) | 709 --- simd/jfmmxint.asm» (revision 677) |
858 +++ simd/jfmmxint.asm (working copy) | 710 +++ simd/jfmmxint.asm (working copy) |
859 @@ -66,7 +66,7 @@ | 711 @@ -66,7 +66,7 @@ |
860 SECTION SEG_CONST | 712 SECTION SEG_CONST |
861 | 713 |
862 alignz 16 | 714 alignz 16 |
863 - global EXTN(jconst_fdct_islow_mmx) | 715 - global EXTN(jconst_fdct_islow_mmx) |
864 + global EXTN(jconst_fdct_islow_mmx) PRIVATE | 716 + global EXTN(jconst_fdct_islow_mmx) PRIVATE |
865 | 717 |
866 EXTN(jconst_fdct_islow_mmx): | 718 EXTN(jconst_fdct_islow_mmx): |
867 | 719 |
868 @@ -101,7 +101,7 @@ | 720 @@ -101,7 +101,7 @@ |
869 %define WK_NUM 2 | 721 %define WK_NUM 2 |
870 | 722 |
871 align 16 | 723 align 16 |
872 - global EXTN(jsimd_fdct_islow_mmx) | 724 - global EXTN(jsimd_fdct_islow_mmx) |
873 + global EXTN(jsimd_fdct_islow_mmx) PRIVATE | 725 + global EXTN(jsimd_fdct_islow_mmx) PRIVATE |
874 | 726 |
875 EXTN(jsimd_fdct_islow_mmx): | 727 EXTN(jsimd_fdct_islow_mmx): |
876 push ebp | 728 push ebp |
| 729 Index: simd/jcgryss2-64.asm |
| 730 =================================================================== |
| 731 --- simd/jcgryss2-64.asm (revision 677) |
| 732 +++ simd/jcgryss2-64.asm (working copy) |
| 733 @@ -37,7 +37,7 @@ |
| 734 |
| 735 align 16 |
| 736 |
| 737 - global EXTN(jsimd_rgb_gray_convert_sse2) |
| 738 + global EXTN(jsimd_rgb_gray_convert_sse2) PRIVATE |
| 739 |
| 740 EXTN(jsimd_rgb_gray_convert_sse2): |
| 741 push rbp |
877 Index: simd/jcqnts2i.asm | 742 Index: simd/jcqnts2i.asm |
878 =================================================================== | 743 =================================================================== |
879 --- simd/jcqnts2i.asm» (revision 64575) | 744 --- simd/jcqnts2i.asm» (revision 677) |
880 +++ simd/jcqnts2i.asm (working copy) | 745 +++ simd/jcqnts2i.asm (working copy) |
881 @@ -35,7 +35,7 @@ | 746 @@ -35,7 +35,7 @@ |
882 %define workspace ebp+16 ; DCTELEM * workspace | 747 %define workspace ebp+16 ; DCTELEM * workspace |
883 | 748 |
884 align 16 | 749 align 16 |
885 - global EXTN(jsimd_convsamp_sse2) | 750 - global EXTN(jsimd_convsamp_sse2) |
886 + global EXTN(jsimd_convsamp_sse2) PRIVATE | 751 + global EXTN(jsimd_convsamp_sse2) PRIVATE |
887 | 752 |
888 EXTN(jsimd_convsamp_sse2): | 753 EXTN(jsimd_convsamp_sse2): |
889 push ebp | 754 push ebp |
890 @@ -117,7 +117,7 @@ | 755 @@ -117,7 +117,7 @@ |
891 %define workspace ebp+16 ; DCTELEM * workspace | 756 %define workspace ebp+16 ; DCTELEM * workspace |
892 | 757 |
893 align 16 | 758 align 16 |
894 - global EXTN(jsimd_quantize_sse2) | 759 - global EXTN(jsimd_quantize_sse2) |
895 + global EXTN(jsimd_quantize_sse2) PRIVATE | 760 + global EXTN(jsimd_quantize_sse2) PRIVATE |
896 | 761 |
897 EXTN(jsimd_quantize_sse2): | 762 EXTN(jsimd_quantize_sse2): |
898 push ebp | 763 push ebp |
899 Index: simd/jiss2fst-64.asm | 764 Index: simd/jiss2fst-64.asm |
900 =================================================================== | 765 =================================================================== |
901 --- simd/jiss2fst-64.asm» (revision 64575) | 766 --- simd/jiss2fst-64.asm» (revision 677) |
902 +++ simd/jiss2fst-64.asm (working copy) | 767 +++ simd/jiss2fst-64.asm (working copy) |
903 @@ -60,7 +60,7 @@ | 768 @@ -60,7 +60,7 @@ |
904 %define CONST_SHIFT (16 - PRE_MULTIPLY_SCALE_BITS - CONST_BITS) | 769 %define CONST_SHIFT (16 - PRE_MULTIPLY_SCALE_BITS - CONST_BITS) |
905 | 770 |
906 alignz 16 | 771 alignz 16 |
907 - global EXTN(jconst_idct_ifast_sse2) | 772 - global EXTN(jconst_idct_ifast_sse2) |
908 + global EXTN(jconst_idct_ifast_sse2) PRIVATE | 773 + global EXTN(jconst_idct_ifast_sse2) PRIVATE |
909 | 774 |
910 EXTN(jconst_idct_ifast_sse2): | 775 EXTN(jconst_idct_ifast_sse2): |
911 | 776 |
912 @@ -93,7 +93,7 @@ | 777 @@ -93,7 +93,7 @@ |
913 %define WK_NUM 2 | 778 %define WK_NUM 2 |
914 | 779 |
915 align 16 | 780 align 16 |
916 - global EXTN(jsimd_idct_ifast_sse2) | 781 - global EXTN(jsimd_idct_ifast_sse2) |
917 + global EXTN(jsimd_idct_ifast_sse2) PRIVATE | 782 + global EXTN(jsimd_idct_ifast_sse2) PRIVATE |
918 | 783 |
919 EXTN(jsimd_idct_ifast_sse2): | 784 EXTN(jsimd_idct_ifast_sse2): |
920 push rbp | 785 push rbp |
921 Index: simd/jimmxint.asm | |
922 =================================================================== | |
923 --- simd/jimmxint.asm (revision 64575) | |
924 +++ simd/jimmxint.asm (working copy) | |
925 @@ -66,7 +66,7 @@ | |
926 SECTION SEG_CONST | |
927 | |
928 alignz 16 | |
929 - global EXTN(jconst_idct_islow_mmx) | |
930 + global EXTN(jconst_idct_islow_mmx) PRIVATE | |
931 | |
932 EXTN(jconst_idct_islow_mmx): | |
933 | |
934 @@ -107,7 +107,7 @@ | |
935 ; JCOEF workspace[DCTSIZE2] | |
936 | |
937 align 16 | |
938 - global EXTN(jsimd_idct_islow_mmx) | |
939 + global EXTN(jsimd_idct_islow_mmx) PRIVATE | |
940 | |
941 EXTN(jsimd_idct_islow_mmx): | |
942 push ebp | |
943 Index: simd/jiss2flt.asm | 786 Index: simd/jiss2flt.asm |
944 =================================================================== | 787 =================================================================== |
945 --- simd/jiss2flt.asm» (revision 64575) | 788 --- simd/jiss2flt.asm» (revision 677) |
946 +++ simd/jiss2flt.asm (working copy) | 789 +++ simd/jiss2flt.asm (working copy) |
947 @@ -37,7 +37,7 @@ | 790 @@ -37,7 +37,7 @@ |
948 SECTION SEG_CONST | 791 SECTION SEG_CONST |
949 | 792 |
950 alignz 16 | 793 alignz 16 |
951 - global EXTN(jconst_idct_float_sse2) | 794 - global EXTN(jconst_idct_float_sse2) |
952 + global EXTN(jconst_idct_float_sse2) PRIVATE | 795 + global EXTN(jconst_idct_float_sse2) PRIVATE |
953 | 796 |
954 EXTN(jconst_idct_float_sse2): | 797 EXTN(jconst_idct_float_sse2): |
955 | 798 |
956 @@ -73,7 +73,7 @@ | 799 @@ -73,7 +73,7 @@ |
957 ; FAST_FLOAT workspace[DCTSIZE2] | 800 ; FAST_FLOAT workspace[DCTSIZE2] |
958 | 801 |
959 align 16 | 802 align 16 |
960 - global EXTN(jsimd_idct_float_sse2) | 803 - global EXTN(jsimd_idct_float_sse2) |
961 + global EXTN(jsimd_idct_float_sse2) PRIVATE | 804 + global EXTN(jsimd_idct_float_sse2) PRIVATE |
962 | 805 |
963 EXTN(jsimd_idct_float_sse2): | 806 EXTN(jsimd_idct_float_sse2): |
964 push ebp | 807 push ebp |
965 Index: simd/jfss2int.asm | |
966 =================================================================== | |
967 --- simd/jfss2int.asm (revision 64575) | |
968 +++ simd/jfss2int.asm (working copy) | |
969 @@ -66,7 +66,7 @@ | |
970 SECTION SEG_CONST | |
971 | |
972 alignz 16 | |
973 - global EXTN(jconst_fdct_islow_sse2) | |
974 + global EXTN(jconst_fdct_islow_sse2) PRIVATE | |
975 | |
976 EXTN(jconst_fdct_islow_sse2): | |
977 | |
978 @@ -101,7 +101,7 @@ | |
979 %define WK_NUM 6 | |
980 | |
981 align 16 | |
982 - global EXTN(jsimd_fdct_islow_sse2) | |
983 + global EXTN(jsimd_fdct_islow_sse2) PRIVATE | |
984 | |
985 EXTN(jsimd_fdct_islow_sse2): | |
986 push ebp | |
987 Index: simd/jiss2int.asm | 808 Index: simd/jiss2int.asm |
988 =================================================================== | 809 =================================================================== |
989 --- simd/jiss2int.asm» (revision 64575) | 810 --- simd/jiss2int.asm» (revision 677) |
990 +++ simd/jiss2int.asm (working copy) | 811 +++ simd/jiss2int.asm (working copy) |
991 @@ -66,7 +66,7 @@ | 812 @@ -66,7 +66,7 @@ |
992 SECTION SEG_CONST | 813 SECTION SEG_CONST |
993 | 814 |
994 alignz 16 | 815 alignz 16 |
995 - global EXTN(jconst_idct_islow_sse2) | 816 - global EXTN(jconst_idct_islow_sse2) |
996 + global EXTN(jconst_idct_islow_sse2) PRIVATE | 817 + global EXTN(jconst_idct_islow_sse2) PRIVATE |
997 | 818 |
998 EXTN(jconst_idct_islow_sse2): | 819 EXTN(jconst_idct_islow_sse2): |
999 | 820 |
1000 @@ -105,7 +105,7 @@ | 821 @@ -105,7 +105,7 @@ |
1001 %define WK_NUM 12 | 822 %define WK_NUM 12 |
1002 | 823 |
1003 align 16 | 824 align 16 |
1004 - global EXTN(jsimd_idct_islow_sse2) | 825 - global EXTN(jsimd_idct_islow_sse2) |
1005 + global EXTN(jsimd_idct_islow_sse2) PRIVATE | 826 + global EXTN(jsimd_idct_islow_sse2) PRIVATE |
1006 | 827 |
1007 EXTN(jsimd_idct_islow_sse2): | 828 EXTN(jsimd_idct_islow_sse2): |
1008 push ebp | 829 push ebp |
1009 Index: simd/jfsseflt-64.asm | 830 Index: simd/jfsseflt-64.asm |
1010 =================================================================== | 831 =================================================================== |
1011 --- simd/jfsseflt-64.asm» (revision 64575) | 832 --- simd/jfsseflt-64.asm» (revision 677) |
1012 +++ simd/jfsseflt-64.asm (working copy) | 833 +++ simd/jfsseflt-64.asm (working copy) |
1013 @@ -38,7 +38,7 @@ | 834 @@ -38,7 +38,7 @@ |
1014 SECTION SEG_CONST | 835 SECTION SEG_CONST |
1015 | 836 |
1016 alignz 16 | 837 alignz 16 |
1017 - global EXTN(jconst_fdct_float_sse) | 838 - global EXTN(jconst_fdct_float_sse) |
1018 + global EXTN(jconst_fdct_float_sse) PRIVATE | 839 + global EXTN(jconst_fdct_float_sse) PRIVATE |
1019 | 840 |
1020 EXTN(jconst_fdct_float_sse): | 841 EXTN(jconst_fdct_float_sse): |
1021 | 842 |
1022 @@ -65,7 +65,7 @@ | 843 @@ -65,7 +65,7 @@ |
1023 %define WK_NUM 2 | 844 %define WK_NUM 2 |
1024 | 845 |
1025 align 16 | 846 align 16 |
1026 - global EXTN(jsimd_fdct_float_sse) | 847 - global EXTN(jsimd_fdct_float_sse) |
1027 + global EXTN(jsimd_fdct_float_sse) PRIVATE | 848 + global EXTN(jsimd_fdct_float_sse) PRIVATE |
1028 | 849 |
1029 EXTN(jsimd_fdct_float_sse): | 850 EXTN(jsimd_fdct_float_sse): |
1030 push rbp | 851 push rbp |
1031 Index: simd/jccolss2-64.asm | 852 Index: simd/jccolss2-64.asm |
1032 =================================================================== | 853 =================================================================== |
1033 --- simd/jccolss2-64.asm» (revision 64575) | 854 --- simd/jccolss2-64.asm» (revision 677) |
1034 +++ simd/jccolss2-64.asm (working copy) | 855 +++ simd/jccolss2-64.asm (working copy) |
1035 @@ -34,7 +34,7 @@ | 856 @@ -34,7 +34,7 @@ |
1036 SECTION SEG_CONST | 857 SECTION SEG_CONST |
1037 | 858 |
1038 alignz 16 | 859 alignz 16 |
1039 - global EXTN(jconst_rgb_ycc_convert_sse2) | 860 - global EXTN(jconst_rgb_ycc_convert_sse2) |
1040 + global EXTN(jconst_rgb_ycc_convert_sse2) PRIVATE | 861 + global EXTN(jconst_rgb_ycc_convert_sse2) PRIVATE |
1041 | 862 |
1042 EXTN(jconst_rgb_ycc_convert_sse2): | 863 EXTN(jconst_rgb_ycc_convert_sse2): |
1043 | 864 |
1044 Index: simd/jccolmmx.asm | |
1045 =================================================================== | |
1046 --- simd/jccolmmx.asm (revision 64575) | |
1047 +++ simd/jccolmmx.asm (working copy) | |
1048 @@ -37,7 +37,7 @@ | |
1049 SECTION SEG_CONST | |
1050 | |
1051 alignz 16 | |
1052 - global EXTN(jconst_rgb_ycc_convert_mmx) | |
1053 + global EXTN(jconst_rgb_ycc_convert_mmx) PRIVATE | |
1054 | |
1055 EXTN(jconst_rgb_ycc_convert_mmx): | |
1056 | |
1057 Index: simd/jcsamss2-64.asm | 865 Index: simd/jcsamss2-64.asm |
1058 =================================================================== | 866 =================================================================== |
1059 --- simd/jcsamss2-64.asm» (revision 64575) | 867 --- simd/jcsamss2-64.asm» (revision 677) |
1060 +++ simd/jcsamss2-64.asm (working copy) | 868 +++ simd/jcsamss2-64.asm (working copy) |
1061 @@ -41,7 +41,7 @@ | 869 @@ -41,7 +41,7 @@ |
1062 ; r15 = JSAMPARRAY output_data | 870 ; r15 = JSAMPARRAY output_data |
1063 | 871 |
1064 align 16 | 872 align 16 |
1065 - global EXTN(jsimd_h2v1_downsample_sse2) | 873 - global EXTN(jsimd_h2v1_downsample_sse2) |
1066 + global EXTN(jsimd_h2v1_downsample_sse2) PRIVATE | 874 + global EXTN(jsimd_h2v1_downsample_sse2) PRIVATE |
1067 | 875 |
1068 EXTN(jsimd_h2v1_downsample_sse2): | 876 EXTN(jsimd_h2v1_downsample_sse2): |
1069 push rbp | 877 push rbp |
1070 @@ -185,7 +185,7 @@ | 878 @@ -185,7 +185,7 @@ |
1071 ; r15 = JSAMPARRAY output_data | 879 ; r15 = JSAMPARRAY output_data |
1072 | 880 |
1073 align 16 | 881 align 16 |
1074 - global EXTN(jsimd_h2v2_downsample_sse2) | 882 - global EXTN(jsimd_h2v2_downsample_sse2) |
1075 + global EXTN(jsimd_h2v2_downsample_sse2) PRIVATE | 883 + global EXTN(jsimd_h2v2_downsample_sse2) PRIVATE |
1076 | 884 |
1077 EXTN(jsimd_h2v2_downsample_sse2): | 885 EXTN(jsimd_h2v2_downsample_sse2): |
1078 push rbp | 886 push rbp |
1079 Index: simd/jdcolmmx.asm | |
1080 =================================================================== | |
1081 --- simd/jdcolmmx.asm (revision 64575) | |
1082 +++ simd/jdcolmmx.asm (working copy) | |
1083 @@ -35,7 +35,7 @@ | |
1084 SECTION SEG_CONST | |
1085 | |
1086 alignz 16 | |
1087 - global EXTN(jconst_ycc_rgb_convert_mmx) | |
1088 + global EXTN(jconst_ycc_rgb_convert_mmx) PRIVATE | |
1089 | |
1090 EXTN(jconst_ycc_rgb_convert_mmx): | |
1091 | |
1092 Index: simd/jdclrss2-64.asm | 887 Index: simd/jdclrss2-64.asm |
1093 =================================================================== | 888 =================================================================== |
1094 --- simd/jdclrss2-64.asm» (revision 64575) | 889 --- simd/jdclrss2-64.asm» (revision 677) |
1095 +++ simd/jdclrss2-64.asm (working copy) | 890 +++ simd/jdclrss2-64.asm (working copy) |
1096 @@ -20,8 +20,12 @@ | 891 @@ -39,7 +39,7 @@ |
1097 %include "jcolsamp.inc" | |
1098 » » » » | |
1099 ; -------------------------------------------------------------------------- | |
1100 +%ifndef NEED_SECTION | |
1101 +%define NEED_SECTION | |
1102 » SECTION»SEG_TEXT | |
1103 » BITS» 64 | |
1104 +%endif | |
1105 + | |
1106 ; | |
1107 ; Convert some rows of samples to the output colorspace. | |
1108 ; | |
1109 @@ -41,7 +45,7 @@ | |
1110 %define WK_NUM 2 | 892 %define WK_NUM 2 |
1111 | 893 |
1112 align 16 | 894 align 16 |
1113 - global EXTN(jsimd_ycc_rgb_convert_sse2) | 895 - global EXTN(jsimd_ycc_rgb_convert_sse2) |
1114 + global EXTN(jsimd_ycc_rgb_convert_sse2) PRIVATE | 896 + global EXTN(jsimd_ycc_rgb_convert_sse2) PRIVATE |
1115 | 897 |
1116 EXTN(jsimd_ycc_rgb_convert_sse2): | 898 EXTN(jsimd_ycc_rgb_convert_sse2): |
1117 push rbp | 899 push rbp |
1118 @@ -292,6 +296,41 @@ | 900 @@ -290,6 +290,41 @@ |
1119 movdqa xmmA,xmmD | 901 movdqa xmmA,xmmD |
1120 sub rcx, byte SIZEOF_XMMWORD | 902 sub rcx, byte SIZEOF_XMMWORD |
1121 .column_st15: | 903 .column_st15: |
1122 +%ifdef STRICT_MEMORY_ACCESS | 904 +%ifdef STRICT_MEMORY_ACCESS |
1123 + ; Store the lower 8 bytes of xmmA to the output when it has enough | 905 + ; Store the lower 8 bytes of xmmA to the output when it has enough |
1124 + ; space. | 906 + ; space. |
1125 + cmp rcx, byte SIZEOF_MMWORD | 907 + cmp rcx, byte SIZEOF_MMWORD |
1126 + jb short .column_st7 | 908 + jb short .column_st7 |
1127 + movq MMWORD [rdi], xmmA | 909 + movq MMWORD [rdi], xmmA |
1128 + add rdi, byte SIZEOF_MMWORD | 910 + add rdi, byte SIZEOF_MMWORD |
(...skipping 21 matching lines...) Expand all Loading... |
1150 +.column_st1: | 932 +.column_st1: |
1151 + ; Store the lower 1 byte of rax to the output when it has enough | 933 + ; Store the lower 1 byte of rax to the output when it has enough |
1152 + ; space. | 934 + ; space. |
1153 + test rcx, rcx | 935 + test rcx, rcx |
1154 + jz short .nextrow | 936 + jz short .nextrow |
1155 + mov BYTE [rdi], al | 937 + mov BYTE [rdi], al |
1156 +%else | 938 +%else |
1157 mov rax,rcx | 939 mov rax,rcx |
1158 xor rcx, byte 0x0F | 940 xor rcx, byte 0x0F |
1159 shl rcx, 2 | 941 shl rcx, 2 |
1160 @@ -331,6 +370,7 @@ | 942 @@ -329,6 +364,7 @@ |
1161 por xmmE,xmmC | 943 por xmmE,xmmC |
1162 .adj0: ; ---------------- | 944 .adj0: ; ---------------- |
1163 maskmovdqu xmmA,xmmE ; movntdqu XMMWORD [rdi], xmmA | 945 maskmovdqu xmmA,xmmE ; movntdqu XMMWORD [rdi], xmmA |
1164 +%endif ; STRICT_MEMORY_ACCESS ; --------------- | 946 +%endif ; STRICT_MEMORY_ACCESS ; --------------- |
1165 | 947 |
1166 %else ; RGB_PIXELSIZE == 4 ; ----------- | 948 %else ; RGB_PIXELSIZE == 4 ; ----------- |
1167 | 949 |
1168 @@ -415,6 +455,22 @@ | 950 @@ -413,6 +449,22 @@ |
1169 movdqa xmmA,xmmD | 951 movdqa xmmA,xmmD |
1170 sub rcx, byte SIZEOF_XMMWORD/4 | 952 sub rcx, byte SIZEOF_XMMWORD/4 |
1171 .column_st15: | 953 .column_st15: |
1172 +%ifdef STRICT_MEMORY_ACCESS | 954 +%ifdef STRICT_MEMORY_ACCESS |
1173 + ; Store two pixels (8 bytes) of xmmA to the output when it has enough | 955 + ; Store two pixels (8 bytes) of xmmA to the output when it has enough |
1174 + ; space. | 956 + ; space. |
1175 + cmp rcx, byte SIZEOF_XMMWORD/8 | 957 + cmp rcx, byte SIZEOF_XMMWORD/8 |
1176 + jb short .column_st7 | 958 + jb short .column_st7 |
1177 + movq MMWORD [rdi], xmmA | 959 + movq MMWORD [rdi], xmmA |
1178 + add rdi, byte SIZEOF_XMMWORD/8*4 | 960 + add rdi, byte SIZEOF_XMMWORD/8*4 |
1179 + sub rcx, byte SIZEOF_XMMWORD/8 | 961 + sub rcx, byte SIZEOF_XMMWORD/8 |
1180 + psrldq xmmA, SIZEOF_XMMWORD/8*4 | 962 + psrldq xmmA, SIZEOF_XMMWORD/8*4 |
1181 +.column_st7: | 963 +.column_st7: |
1182 + ; Store one pixel (4 bytes) of xmmA to the output when it has enough | 964 + ; Store one pixel (4 bytes) of xmmA to the output when it has enough |
1183 + ; space. | 965 + ; space. |
1184 + test rcx, rcx | 966 + test rcx, rcx |
1185 + jz short .nextrow | 967 + jz short .nextrow |
1186 + movd DWORD [rdi], xmmA | 968 + movd DWORD [rdi], xmmA |
1187 +%else | 969 +%else |
1188 cmp rcx, byte SIZEOF_XMMWORD/16 | 970 cmp rcx, byte SIZEOF_XMMWORD/16 |
1189 jb near .nextrow | 971 jb near .nextrow |
1190 mov rax,rcx | 972 mov rax,rcx |
1191 @@ -454,6 +510,7 @@ | 973 @@ -452,6 +504,7 @@ |
1192 por xmmE,xmmG | 974 por xmmE,xmmG |
1193 .adj0: ; ---------------- | 975 .adj0: ; ---------------- |
1194 maskmovdqu xmmA,xmmE ; movntdqu XMMWORD [rdi], xmmA | 976 maskmovdqu xmmA,xmmE ; movntdqu XMMWORD [rdi], xmmA |
1195 +%endif ; STRICT_MEMORY_ACCESS ; --------------- | 977 +%endif ; STRICT_MEMORY_ACCESS ; --------------- |
1196 | 978 |
1197 %endif ; RGB_PIXELSIZE ; --------------- | 979 %endif ; RGB_PIXELSIZE ; --------------- |
1198 | 980 |
| 981 Index: simd/jdcolmmx.asm |
| 982 =================================================================== |
| 983 --- simd/jdcolmmx.asm (revision 677) |
| 984 +++ simd/jdcolmmx.asm (working copy) |
| 985 @@ -35,7 +35,7 @@ |
| 986 SECTION SEG_CONST |
| 987 |
| 988 alignz 16 |
| 989 - global EXTN(jconst_ycc_rgb_convert_mmx) |
| 990 + global EXTN(jconst_ycc_rgb_convert_mmx) PRIVATE |
| 991 |
| 992 EXTN(jconst_ycc_rgb_convert_mmx): |
| 993 |
1199 Index: simd/jcclrmmx.asm | 994 Index: simd/jcclrmmx.asm |
1200 =================================================================== | 995 =================================================================== |
1201 --- simd/jcclrmmx.asm» (revision 64575) | 996 --- simd/jcclrmmx.asm» (revision 677) |
1202 +++ simd/jcclrmmx.asm (working copy) | 997 +++ simd/jcclrmmx.asm (working copy) |
1203 @@ -19,8 +19,12 @@ | 998 @@ -40,7 +40,7 @@ |
1204 %include "jcolsamp.inc" | |
1205 | |
1206 ; -------------------------------------------------------------------------- | |
1207 +%ifndef NEED_SECTION | |
1208 +%define NEED_SECTION | |
1209 » SECTION»SEG_TEXT | |
1210 » BITS» 32 | |
1211 +%endif | |
1212 + | |
1213 ; | |
1214 ; Convert some rows of samples to the output colorspace. | |
1215 ; | |
1216 @@ -42,7 +46,7 @@ | |
1217 %define gotptr wk(0)-SIZEOF_POINTER ; void * gotptr | 999 %define gotptr wk(0)-SIZEOF_POINTER ; void * gotptr |
1218 | 1000 |
1219 align 16 | 1001 align 16 |
1220 - global EXTN(jsimd_rgb_ycc_convert_mmx) | 1002 - global EXTN(jsimd_rgb_ycc_convert_mmx) |
1221 + global EXTN(jsimd_rgb_ycc_convert_mmx) PRIVATE | 1003 + global EXTN(jsimd_rgb_ycc_convert_mmx) PRIVATE |
1222 | 1004 |
1223 EXTN(jsimd_rgb_ycc_convert_mmx): | 1005 EXTN(jsimd_rgb_ycc_convert_mmx): |
1224 push ebp | 1006 push ebp |
1225 Index: simd/jimmxred.asm | |
1226 =================================================================== | |
1227 --- simd/jimmxred.asm (revision 64575) | |
1228 +++ simd/jimmxred.asm (working copy) | |
1229 @@ -72,7 +72,7 @@ | |
1230 SECTION SEG_CONST | |
1231 | |
1232 alignz 16 | |
1233 - global EXTN(jconst_idct_red_mmx) | |
1234 + global EXTN(jconst_idct_red_mmx) PRIVATE | |
1235 | |
1236 EXTN(jconst_idct_red_mmx): | |
1237 | |
1238 @@ -115,7 +115,7 @@ | |
1239 ; JCOEF workspace[DCTSIZE2] | |
1240 | |
1241 align 16 | |
1242 - global EXTN(jsimd_idct_4x4_mmx) | |
1243 + global EXTN(jsimd_idct_4x4_mmx) PRIVATE | |
1244 | |
1245 EXTN(jsimd_idct_4x4_mmx): | |
1246 push ebp | |
1247 @@ -503,7 +503,7 @@ | |
1248 %define output_col(b) (b)+20 ; JDIMENSION output_col | |
1249 | |
1250 align 16 | |
1251 - global EXTN(jsimd_idct_2x2_mmx) | |
1252 + global EXTN(jsimd_idct_2x2_mmx) PRIVATE | |
1253 | |
1254 EXTN(jsimd_idct_2x2_mmx): | |
1255 push ebp | |
1256 Index: simd/jdclrmmx.asm | |
1257 =================================================================== | |
1258 --- simd/jdclrmmx.asm (revision 64575) | |
1259 +++ simd/jdclrmmx.asm (working copy) | |
1260 @@ -19,8 +19,12 @@ | |
1261 %include "jcolsamp.inc" | |
1262 | |
1263 ; -------------------------------------------------------------------------- | |
1264 +%ifndef NEED_SECTION | |
1265 +%define NEED_SECTION | |
1266 SECTION SEG_TEXT | |
1267 BITS 32 | |
1268 +%endif | |
1269 + | |
1270 ; | |
1271 ; Convert some rows of samples to the output colorspace. | |
1272 ; | |
1273 @@ -42,7 +46,7 @@ | |
1274 %define gotptr wk(0)-SIZEOF_POINTER ; void * gotptr | |
1275 | |
1276 align 16 | |
1277 - global EXTN(jsimd_ycc_rgb_convert_mmx) | |
1278 + global EXTN(jsimd_ycc_rgb_convert_mmx) PRIVATE | |
1279 | |
1280 EXTN(jsimd_ycc_rgb_convert_mmx): | |
1281 push ebp | |
1282 Index: simd/jfsseflt.asm | 1007 Index: simd/jfsseflt.asm |
1283 =================================================================== | 1008 =================================================================== |
1284 --- simd/jfsseflt.asm» (revision 64575) | 1009 --- simd/jfsseflt.asm» (revision 677) |
1285 +++ simd/jfsseflt.asm (working copy) | 1010 +++ simd/jfsseflt.asm (working copy) |
1286 @@ -37,7 +37,7 @@ | 1011 @@ -37,7 +37,7 @@ |
1287 SECTION SEG_CONST | 1012 SECTION SEG_CONST |
1288 | 1013 |
1289 alignz 16 | 1014 alignz 16 |
1290 - global EXTN(jconst_fdct_float_sse) | 1015 - global EXTN(jconst_fdct_float_sse) |
1291 + global EXTN(jconst_fdct_float_sse) PRIVATE | 1016 + global EXTN(jconst_fdct_float_sse) PRIVATE |
1292 | 1017 |
1293 EXTN(jconst_fdct_float_sse): | 1018 EXTN(jconst_fdct_float_sse): |
1294 | 1019 |
1295 @@ -65,7 +65,7 @@ | 1020 @@ -65,7 +65,7 @@ |
1296 %define WK_NUM 2 | 1021 %define WK_NUM 2 |
1297 | 1022 |
1298 align 16 | 1023 align 16 |
1299 - global EXTN(jsimd_fdct_float_sse) | 1024 - global EXTN(jsimd_fdct_float_sse) |
1300 + global EXTN(jsimd_fdct_float_sse) PRIVATE | 1025 + global EXTN(jsimd_fdct_float_sse) PRIVATE |
1301 | 1026 |
1302 EXTN(jsimd_fdct_float_sse): | 1027 EXTN(jsimd_fdct_float_sse): |
1303 push ebp | 1028 push ebp |
1304 Index: simd/jsimdext.inc | |
1305 =================================================================== | |
1306 --- simd/jsimdext.inc (revision 64575) | |
1307 +++ simd/jsimdext.inc (working copy) | |
1308 @@ -38,16 +38,16 @@ | |
1309 | |
1310 ; -- segment definition -- | |
1311 ; | |
1312 -%define SEG_TEXT .text align=16 public use32 class=CODE | |
1313 -%define SEG_CONST .rdata align=16 public use32 class=CONST | |
1314 +%define SEG_TEXT .text align=16 ; public use32 class=CODE | |
1315 +%define SEG_CONST .rdata align=16 ; public use32 class=CONST | |
1316 | |
1317 %elifdef WIN64 ; ----(nasm -fwin64 -DWIN64 ...)-------- | |
1318 ; * Microsoft Visual C++ | |
1319 | |
1320 ; -- segment definition -- | |
1321 ; | |
1322 -%define SEG_TEXT .text align=16 public use64 class=CODE | |
1323 -%define SEG_CONST .rdata align=16 public use64 class=CONST | |
1324 +%define SEG_TEXT .text align=16 ; public use64 class=CODE | |
1325 +%define SEG_CONST .rdata align=16 ; public use64 class=CONST | |
1326 %ifdef MSVC | |
1327 %define EXTN(name) name ; foo() -> foo | |
1328 %endif | |
1329 @@ -369,4 +369,14 @@ | |
1330 ; | |
1331 %include "jsimdcfg.inc" | |
1332 | |
1333 +; Begin chromium edits | |
1334 +%ifdef MACHO ; ----(nasm -fmacho -DMACHO ...)-------- | |
1335 +%define PRIVATE :private_extern | |
1336 +%elifdef ELF ; ----(nasm -felf[64] -DELF ...)------------ | |
1337 +%define PRIVATE :hidden | |
1338 +%else | |
1339 +%define PRIVATE | |
1340 +%endif | |
1341 +; End chromium edits | |
1342 + | |
1343 ; -------------------------------------------------------------------------- | |
1344 Index: simd/jdmrgss2-64.asm | 1029 Index: simd/jdmrgss2-64.asm |
1345 =================================================================== | 1030 =================================================================== |
1346 --- simd/jdmrgss2-64.asm» (revision 64575) | 1031 --- simd/jdmrgss2-64.asm» (revision 677) |
1347 +++ simd/jdmrgss2-64.asm (working copy) | 1032 +++ simd/jdmrgss2-64.asm (working copy) |
1348 @@ -20,8 +20,12 @@ | 1033 @@ -39,7 +39,7 @@ |
1349 %include "jcolsamp.inc" | |
1350 » » » » | |
1351 ; -------------------------------------------------------------------------- | |
1352 +%ifndef NEED_SECTION | |
1353 +%define NEED_SECTION | |
1354 » SECTION»SEG_TEXT | |
1355 » BITS» 64 | |
1356 +%endif | |
1357 + | |
1358 ; | |
1359 ; Upsample and color convert for the case of 2:1 horizontal and 1:1 vertical. | |
1360 ; | |
1361 @@ -41,7 +45,7 @@ | |
1362 %define WK_NUM 3 | 1034 %define WK_NUM 3 |
1363 | 1035 |
1364 align 16 | 1036 align 16 |
1365 - global EXTN(jsimd_h2v1_merged_upsample_sse2) | 1037 - global EXTN(jsimd_h2v1_merged_upsample_sse2) |
1366 + global EXTN(jsimd_h2v1_merged_upsample_sse2) PRIVATE | 1038 + global EXTN(jsimd_h2v1_merged_upsample_sse2) PRIVATE |
1367 | 1039 |
1368 EXTN(jsimd_h2v1_merged_upsample_sse2): | 1040 EXTN(jsimd_h2v1_merged_upsample_sse2): |
1369 push rbp | 1041 push rbp |
1370 @@ -296,6 +300,41 @@ | 1042 @@ -294,6 +294,41 @@ |
1371 movdqa xmmA,xmmD | 1043 movdqa xmmA,xmmD |
1372 sub rcx, byte SIZEOF_XMMWORD | 1044 sub rcx, byte SIZEOF_XMMWORD |
1373 .column_st15: | 1045 .column_st15: |
1374 +%ifdef STRICT_MEMORY_ACCESS | 1046 +%ifdef STRICT_MEMORY_ACCESS |
1375 + ; Store the lower 8 bytes of xmmA to the output when it has enough | 1047 + ; Store the lower 8 bytes of xmmA to the output when it has enough |
1376 + ; space. | 1048 + ; space. |
1377 + cmp rcx, byte SIZEOF_MMWORD | 1049 + cmp rcx, byte SIZEOF_MMWORD |
1378 + jb short .column_st7 | 1050 + jb short .column_st7 |
1379 + movq MMWORD [rdi], xmmA | 1051 + movq MMWORD [rdi], xmmA |
1380 + add rdi, byte SIZEOF_MMWORD | 1052 + add rdi, byte SIZEOF_MMWORD |
(...skipping 21 matching lines...) Expand all Loading... |
1402 +.column_st1: | 1074 +.column_st1: |
1403 + ; Store the lower 1 byte of rax to the output when it has enough | 1075 + ; Store the lower 1 byte of rax to the output when it has enough |
1404 + ; space. | 1076 + ; space. |
1405 + test rcx, rcx | 1077 + test rcx, rcx |
1406 + jz short .endcolumn | 1078 + jz short .endcolumn |
1407 + mov BYTE [rdi], al | 1079 + mov BYTE [rdi], al |
1408 +%else | 1080 +%else |
1409 mov rax,rcx | 1081 mov rax,rcx |
1410 xor rcx, byte 0x0F | 1082 xor rcx, byte 0x0F |
1411 shl rcx, 2 | 1083 shl rcx, 2 |
1412 @@ -335,6 +374,7 @@ | 1084 @@ -333,6 +368,7 @@ |
1413 por xmmE,xmmC | 1085 por xmmE,xmmC |
1414 .adj0: ; ---------------- | 1086 .adj0: ; ---------------- |
1415 maskmovdqu xmmA,xmmE ; movntdqu XMMWORD [edi], xmmA | 1087 maskmovdqu xmmA,xmmE ; movntdqu XMMWORD [edi], xmmA |
1416 +%endif ; STRICT_MEMORY_ACCESS ; --------------- | 1088 +%endif ; STRICT_MEMORY_ACCESS ; --------------- |
1417 | 1089 |
1418 %else ; RGB_PIXELSIZE == 4 ; ----------- | 1090 %else ; RGB_PIXELSIZE == 4 ; ----------- |
1419 | 1091 |
1420 @@ -422,6 +462,22 @@ | 1092 @@ -420,6 +456,22 @@ |
1421 movdqa xmmA,xmmD | 1093 movdqa xmmA,xmmD |
1422 sub rcx, byte SIZEOF_XMMWORD/4 | 1094 sub rcx, byte SIZEOF_XMMWORD/4 |
1423 .column_st15: | 1095 .column_st15: |
1424 +%ifdef STRICT_MEMORY_ACCESS | 1096 +%ifdef STRICT_MEMORY_ACCESS |
1425 + ; Store two pixels (8 bytes) of xmmA to the output when it has enough | 1097 + ; Store two pixels (8 bytes) of xmmA to the output when it has enough |
1426 + ; space. | 1098 + ; space. |
1427 + cmp rcx, byte SIZEOF_XMMWORD/8 | 1099 + cmp rcx, byte SIZEOF_XMMWORD/8 |
1428 + jb short .column_st7 | 1100 + jb short .column_st7 |
1429 + movq MMWORD [rdi], xmmA | 1101 + movq MMWORD [rdi], xmmA |
1430 + add rdi, byte SIZEOF_XMMWORD/8*4 | 1102 + add rdi, byte SIZEOF_XMMWORD/8*4 |
1431 + sub rcx, byte SIZEOF_XMMWORD/8 | 1103 + sub rcx, byte SIZEOF_XMMWORD/8 |
1432 + psrldq xmmA, SIZEOF_XMMWORD/8*4 | 1104 + psrldq xmmA, SIZEOF_XMMWORD/8*4 |
1433 +.column_st7: | 1105 +.column_st7: |
1434 + ; Store one pixel (4 bytes) of xmmA to the output when it has enough | 1106 + ; Store one pixel (4 bytes) of xmmA to the output when it has enough |
1435 + ; space. | 1107 + ; space. |
1436 + test rcx, rcx | 1108 + test rcx, rcx |
1437 + jz short .endcolumn | 1109 + jz short .endcolumn |
1438 + movd DWORD [rdi], xmmA | 1110 + movd DWORD [rdi], xmmA |
1439 +%else | 1111 +%else |
1440 cmp rcx, byte SIZEOF_XMMWORD/16 | 1112 cmp rcx, byte SIZEOF_XMMWORD/16 |
1441 jb near .endcolumn | 1113 jb near .endcolumn |
1442 mov rax,rcx | 1114 mov rax,rcx |
1443 @@ -461,6 +517,7 @@ | 1115 @@ -459,6 +511,7 @@ |
1444 por xmmE,xmmG | 1116 por xmmE,xmmG |
1445 .adj0: ; ---------------- | 1117 .adj0: ; ---------------- |
1446 maskmovdqu xmmA,xmmE ; movntdqu XMMWORD [edi], xmmA | 1118 maskmovdqu xmmA,xmmE ; movntdqu XMMWORD [edi], xmmA |
1447 +%endif ; STRICT_MEMORY_ACCESS ; --------------- | 1119 +%endif ; STRICT_MEMORY_ACCESS ; --------------- |
1448 | 1120 |
1449 %endif ; RGB_PIXELSIZE ; --------------- | 1121 %endif ; RGB_PIXELSIZE ; --------------- |
1450 | 1122 |
1451 @@ -492,7 +549,7 @@ | 1123 @@ -490,7 +543,7 @@ |
1452 ; r13 = JSAMPARRAY output_buf | 1124 ; r13 = JSAMPARRAY output_buf |
1453 | 1125 |
1454 align 16 | 1126 align 16 |
1455 - global EXTN(jsimd_h2v2_merged_upsample_sse2) | 1127 - global EXTN(jsimd_h2v2_merged_upsample_sse2) |
1456 + global EXTN(jsimd_h2v2_merged_upsample_sse2) PRIVATE | 1128 + global EXTN(jsimd_h2v2_merged_upsample_sse2) PRIVATE |
1457 | 1129 |
1458 EXTN(jsimd_h2v2_merged_upsample_sse2): | 1130 EXTN(jsimd_h2v2_merged_upsample_sse2): |
1459 push rbp | 1131 push rbp |
1460 Index: simd/jccolss2.asm | 1132 Index: simd/jdcolss2.asm |
1461 =================================================================== | 1133 =================================================================== |
1462 --- simd/jccolss2.asm» (revision 64575) | 1134 --- simd/jdcolss2.asm» (revision 677) |
1463 +++ simd/jccolss2.asm» (working copy) | 1135 +++ simd/jdcolss2.asm» (working copy) |
1464 @@ -34,7 +34,7 @@ | 1136 @@ -35,7 +35,7 @@ |
1465 SECTION SEG_CONST | 1137 SECTION SEG_CONST |
1466 | 1138 |
1467 alignz 16 | 1139 alignz 16 |
1468 -» global» EXTN(jconst_rgb_ycc_convert_sse2) | 1140 -» global» EXTN(jconst_ycc_rgb_convert_sse2) |
1469 +» global» EXTN(jconst_rgb_ycc_convert_sse2) PRIVATE | 1141 +» global» EXTN(jconst_ycc_rgb_convert_sse2) PRIVATE |
1470 | 1142 |
1471 EXTN(jconst_rgb_ycc_convert_sse2): | 1143 EXTN(jconst_ycc_rgb_convert_sse2): |
1472 | 1144 |
1473 Index: simd/jdmermmx.asm | 1145 Index: simd/jdmermmx.asm |
1474 =================================================================== | 1146 =================================================================== |
1475 --- simd/jdmermmx.asm» (revision 64575) | 1147 --- simd/jdmermmx.asm» (revision 677) |
1476 +++ simd/jdmermmx.asm (working copy) | 1148 +++ simd/jdmermmx.asm (working copy) |
1477 @@ -35,7 +35,7 @@ | 1149 @@ -35,7 +35,7 @@ |
1478 SECTION SEG_CONST | 1150 SECTION SEG_CONST |
1479 | 1151 |
1480 alignz 16 | 1152 alignz 16 |
1481 - global EXTN(jconst_merged_upsample_mmx) | 1153 - global EXTN(jconst_merged_upsample_mmx) |
1482 + global EXTN(jconst_merged_upsample_mmx) PRIVATE | 1154 + global EXTN(jconst_merged_upsample_mmx) PRIVATE |
1483 | 1155 |
1484 EXTN(jconst_merged_upsample_mmx): | 1156 EXTN(jconst_merged_upsample_mmx): |
1485 | 1157 |
1486 Index: simd/jdcolss2.asm | 1158 Index: simd/jcclrss2.asm |
1487 =================================================================== | 1159 =================================================================== |
1488 --- simd/jdcolss2.asm» (revision 64575) | 1160 --- simd/jcclrss2.asm» (revision 677) |
1489 +++ simd/jdcolss2.asm» (working copy) | 1161 +++ simd/jcclrss2.asm» (working copy) |
| 1162 @@ -38,7 +38,7 @@ |
| 1163 |
| 1164 » align» 16 |
| 1165 |
| 1166 -» global» EXTN(jsimd_rgb_ycc_convert_sse2) |
| 1167 +» global» EXTN(jsimd_rgb_ycc_convert_sse2) PRIVATE |
| 1168 |
| 1169 EXTN(jsimd_rgb_ycc_convert_sse2): |
| 1170 » push» ebp |
| 1171 Index: simd/jiss2red.asm |
| 1172 =================================================================== |
| 1173 --- simd/jiss2red.asm» (revision 677) |
| 1174 +++ simd/jiss2red.asm» (working copy) |
| 1175 @@ -72,7 +72,7 @@ |
| 1176 » SECTION»SEG_CONST |
| 1177 |
| 1178 » alignz» 16 |
| 1179 -» global» EXTN(jconst_idct_red_sse2) |
| 1180 +» global» EXTN(jconst_idct_red_sse2) PRIVATE |
| 1181 |
| 1182 EXTN(jconst_idct_red_sse2): |
| 1183 |
| 1184 @@ -113,7 +113,7 @@ |
| 1185 %define WK_NUM»» 2 |
| 1186 |
| 1187 » align» 16 |
| 1188 -» global» EXTN(jsimd_idct_4x4_sse2) |
| 1189 +» global» EXTN(jsimd_idct_4x4_sse2) PRIVATE |
| 1190 |
| 1191 EXTN(jsimd_idct_4x4_sse2): |
| 1192 » push» ebp |
| 1193 @@ -424,7 +424,7 @@ |
| 1194 %define output_col(b)» (b)+20» » ; JDIMENSION output_col |
| 1195 |
| 1196 » align» 16 |
| 1197 -» global» EXTN(jsimd_idct_2x2_sse2) |
| 1198 +» global» EXTN(jsimd_idct_2x2_sse2) PRIVATE |
| 1199 |
| 1200 EXTN(jsimd_idct_2x2_sse2): |
| 1201 » push» ebp |
| 1202 Index: simd/jdmerss2.asm |
| 1203 =================================================================== |
| 1204 --- simd/jdmerss2.asm» (revision 677) |
| 1205 +++ simd/jdmerss2.asm» (working copy) |
| 1206 @@ -35,7 +35,7 @@ |
| 1207 » SECTION»SEG_CONST |
| 1208 |
| 1209 » alignz» 16 |
| 1210 -» global» EXTN(jconst_merged_upsample_sse2) |
| 1211 +» global» EXTN(jconst_merged_upsample_sse2) PRIVATE |
| 1212 |
| 1213 EXTN(jconst_merged_upsample_sse2): |
| 1214 |
| 1215 Index: simd/jfss2fst-64.asm |
| 1216 =================================================================== |
| 1217 --- simd/jfss2fst-64.asm» (revision 677) |
| 1218 +++ simd/jfss2fst-64.asm» (working copy) |
| 1219 @@ -53,7 +53,7 @@ |
| 1220 %define CONST_SHIFT (16 - PRE_MULTIPLY_SCALE_BITS - CONST_BITS) |
| 1221 |
| 1222 » alignz» 16 |
| 1223 -» global» EXTN(jconst_fdct_ifast_sse2) |
| 1224 +» global» EXTN(jconst_fdct_ifast_sse2) PRIVATE |
| 1225 |
| 1226 EXTN(jconst_fdct_ifast_sse2): |
| 1227 |
| 1228 @@ -80,7 +80,7 @@ |
| 1229 %define WK_NUM»» 2 |
| 1230 |
| 1231 » align» 16 |
| 1232 -» global» EXTN(jsimd_fdct_ifast_sse2) |
| 1233 +» global» EXTN(jsimd_fdct_ifast_sse2) PRIVATE |
| 1234 |
| 1235 EXTN(jsimd_fdct_ifast_sse2): |
| 1236 » push» rbp |
| 1237 Index: simd/jcqntmmx.asm |
| 1238 =================================================================== |
| 1239 --- simd/jcqntmmx.asm» (revision 677) |
| 1240 +++ simd/jcqntmmx.asm» (working copy) |
| 1241 @@ -35,7 +35,7 @@ |
| 1242 %define workspace» ebp+16» » ; DCTELEM * workspace |
| 1243 |
| 1244 » align» 16 |
| 1245 -» global» EXTN(jsimd_convsamp_mmx) |
| 1246 +» global» EXTN(jsimd_convsamp_mmx) PRIVATE |
| 1247 |
| 1248 EXTN(jsimd_convsamp_mmx): |
| 1249 » push» ebp |
| 1250 @@ -140,7 +140,7 @@ |
| 1251 %define workspace» ebp+16» » ; DCTELEM * workspace |
| 1252 |
| 1253 » align» 16 |
| 1254 -» global» EXTN(jsimd_quantize_mmx) |
| 1255 +» global» EXTN(jsimd_quantize_mmx) PRIVATE |
| 1256 |
| 1257 EXTN(jsimd_quantize_mmx): |
| 1258 » push» ebp |
| 1259 Index: simd/jimmxfst.asm |
| 1260 =================================================================== |
| 1261 --- simd/jimmxfst.asm» (revision 677) |
| 1262 +++ simd/jimmxfst.asm» (working copy) |
| 1263 @@ -59,7 +59,7 @@ |
| 1264 %define CONST_SHIFT (16 - PRE_MULTIPLY_SCALE_BITS - CONST_BITS) |
| 1265 |
| 1266 » alignz» 16 |
| 1267 -» global» EXTN(jconst_idct_ifast_mmx) |
| 1268 +» global» EXTN(jconst_idct_ifast_mmx) PRIVATE |
| 1269 |
| 1270 EXTN(jconst_idct_ifast_mmx): |
| 1271 |
| 1272 @@ -94,7 +94,7 @@ |
| 1273 » » » » » ; JCOEF workspace[DCTSIZE2] |
| 1274 |
| 1275 » align» 16 |
| 1276 -» global» EXTN(jsimd_idct_ifast_mmx) |
| 1277 +» global» EXTN(jsimd_idct_ifast_mmx) PRIVATE |
| 1278 |
| 1279 EXTN(jsimd_idct_ifast_mmx): |
| 1280 » push» ebp |
| 1281 Index: simd/jfss2fst.asm |
| 1282 =================================================================== |
| 1283 --- simd/jfss2fst.asm» (revision 677) |
| 1284 +++ simd/jfss2fst.asm» (working copy) |
| 1285 @@ -52,7 +52,7 @@ |
| 1286 %define CONST_SHIFT (16 - PRE_MULTIPLY_SCALE_BITS - CONST_BITS) |
| 1287 |
| 1288 » alignz» 16 |
| 1289 -» global» EXTN(jconst_fdct_ifast_sse2) |
| 1290 +» global» EXTN(jconst_fdct_ifast_sse2) PRIVATE |
| 1291 |
| 1292 EXTN(jconst_fdct_ifast_sse2): |
| 1293 |
| 1294 @@ -80,7 +80,7 @@ |
| 1295 %define WK_NUM»» 2 |
| 1296 |
| 1297 » align» 16 |
| 1298 -» global» EXTN(jsimd_fdct_ifast_sse2) |
| 1299 +» global» EXTN(jsimd_fdct_ifast_sse2) PRIVATE |
| 1300 |
| 1301 EXTN(jsimd_fdct_ifast_sse2): |
| 1302 » push» ebp |
| 1303 Index: simd/jcgrammx.asm |
| 1304 =================================================================== |
| 1305 --- simd/jcgrammx.asm» (revision 677) |
| 1306 +++ simd/jcgrammx.asm» (working copy) |
| 1307 @@ -33,7 +33,7 @@ |
| 1308 » SECTION»SEG_CONST |
| 1309 |
| 1310 » alignz» 16 |
| 1311 -» global» EXTN(jconst_rgb_gray_convert_mmx) |
| 1312 +» global» EXTN(jconst_rgb_gray_convert_mmx) PRIVATE |
| 1313 |
| 1314 EXTN(jconst_rgb_gray_convert_mmx): |
| 1315 |
| 1316 Index: simd/jdcolss2-64.asm |
| 1317 =================================================================== |
| 1318 --- simd/jdcolss2-64.asm» (revision 677) |
| 1319 +++ simd/jdcolss2-64.asm» (working copy) |
1490 @@ -35,7 +35,7 @@ | 1320 @@ -35,7 +35,7 @@ |
1491 SECTION SEG_CONST | 1321 SECTION SEG_CONST |
1492 | 1322 |
1493 alignz 16 | 1323 alignz 16 |
1494 - global EXTN(jconst_ycc_rgb_convert_sse2) | 1324 - global EXTN(jconst_ycc_rgb_convert_sse2) |
1495 + global EXTN(jconst_ycc_rgb_convert_sse2) PRIVATE | 1325 + global EXTN(jconst_ycc_rgb_convert_sse2) PRIVATE |
1496 | 1326 |
1497 EXTN(jconst_ycc_rgb_convert_sse2): | 1327 EXTN(jconst_ycc_rgb_convert_sse2): |
1498 | 1328 |
| 1329 Index: simd/jf3dnflt.asm |
| 1330 =================================================================== |
| 1331 --- simd/jf3dnflt.asm (revision 677) |
| 1332 +++ simd/jf3dnflt.asm (working copy) |
| 1333 @@ -27,7 +27,7 @@ |
| 1334 SECTION SEG_CONST |
| 1335 |
| 1336 alignz 16 |
| 1337 - global EXTN(jconst_fdct_float_3dnow) |
| 1338 + global EXTN(jconst_fdct_float_3dnow) PRIVATE |
| 1339 |
| 1340 EXTN(jconst_fdct_float_3dnow): |
| 1341 |
| 1342 @@ -55,7 +55,7 @@ |
| 1343 %define WK_NUM 2 |
| 1344 |
| 1345 align 16 |
| 1346 - global EXTN(jsimd_fdct_float_3dnow) |
| 1347 + global EXTN(jsimd_fdct_float_3dnow) PRIVATE |
| 1348 |
| 1349 EXTN(jsimd_fdct_float_3dnow): |
| 1350 push ebp |
| 1351 Index: simd/jdsamss2-64.asm |
| 1352 =================================================================== |
| 1353 --- simd/jdsamss2-64.asm (revision 677) |
| 1354 +++ simd/jdsamss2-64.asm (working copy) |
| 1355 @@ -23,7 +23,7 @@ |
| 1356 SECTION SEG_CONST |
| 1357 |
| 1358 alignz 16 |
| 1359 - global EXTN(jconst_fancy_upsample_sse2) |
| 1360 + global EXTN(jconst_fancy_upsample_sse2) PRIVATE |
| 1361 |
| 1362 EXTN(jconst_fancy_upsample_sse2): |
| 1363 |
| 1364 @@ -59,7 +59,7 @@ |
| 1365 ; r13 = JSAMPARRAY * output_data_ptr |
| 1366 |
| 1367 align 16 |
| 1368 - global EXTN(jsimd_h2v1_fancy_upsample_sse2) |
| 1369 + global EXTN(jsimd_h2v1_fancy_upsample_sse2) PRIVATE |
| 1370 |
| 1371 EXTN(jsimd_h2v1_fancy_upsample_sse2): |
| 1372 push rbp |
| 1373 @@ -201,7 +201,7 @@ |
| 1374 %define WK_NUM 4 |
| 1375 |
| 1376 align 16 |
| 1377 - global EXTN(jsimd_h2v2_fancy_upsample_sse2) |
| 1378 + global EXTN(jsimd_h2v2_fancy_upsample_sse2) PRIVATE |
| 1379 |
| 1380 EXTN(jsimd_h2v2_fancy_upsample_sse2): |
| 1381 push rbp |
| 1382 @@ -498,7 +498,7 @@ |
| 1383 ; r13 = JSAMPARRAY * output_data_ptr |
| 1384 |
| 1385 align 16 |
| 1386 - global EXTN(jsimd_h2v1_upsample_sse2) |
| 1387 + global EXTN(jsimd_h2v1_upsample_sse2) PRIVATE |
| 1388 |
| 1389 EXTN(jsimd_h2v1_upsample_sse2): |
| 1390 push rbp |
| 1391 @@ -587,7 +587,7 @@ |
| 1392 ; r13 = JSAMPARRAY * output_data_ptr |
| 1393 |
| 1394 align 16 |
| 1395 - global EXTN(jsimd_h2v2_upsample_sse2) |
| 1396 + global EXTN(jsimd_h2v2_upsample_sse2) PRIVATE |
| 1397 |
| 1398 EXTN(jsimd_h2v2_upsample_sse2): |
| 1399 push rbp |
| 1400 Index: simd/jcgrass2.asm |
| 1401 =================================================================== |
| 1402 --- simd/jcgrass2.asm (revision 677) |
| 1403 +++ simd/jcgrass2.asm (working copy) |
| 1404 @@ -30,7 +30,7 @@ |
| 1405 SECTION SEG_CONST |
| 1406 |
| 1407 alignz 16 |
| 1408 - global EXTN(jconst_rgb_gray_convert_sse2) |
| 1409 + global EXTN(jconst_rgb_gray_convert_sse2) PRIVATE |
| 1410 |
| 1411 EXTN(jconst_rgb_gray_convert_sse2): |
| 1412 |
| 1413 Index: simd/jcsammmx.asm |
| 1414 =================================================================== |
| 1415 --- simd/jcsammmx.asm (revision 677) |
| 1416 +++ simd/jcsammmx.asm (working copy) |
| 1417 @@ -40,7 +40,7 @@ |
| 1418 %define output_data(b) (b)+28 ; JSAMPARRAY output_data |
| 1419 |
| 1420 align 16 |
| 1421 - global EXTN(jsimd_h2v1_downsample_mmx) |
| 1422 + global EXTN(jsimd_h2v1_downsample_mmx) PRIVATE |
| 1423 |
| 1424 EXTN(jsimd_h2v1_downsample_mmx): |
| 1425 push ebp |
| 1426 @@ -182,7 +182,7 @@ |
| 1427 %define output_data(b) (b)+28 ; JSAMPARRAY output_data |
| 1428 |
| 1429 align 16 |
| 1430 - global EXTN(jsimd_h2v2_downsample_mmx) |
| 1431 + global EXTN(jsimd_h2v2_downsample_mmx) PRIVATE |
| 1432 |
| 1433 EXTN(jsimd_h2v2_downsample_mmx): |
| 1434 push ebp |
| 1435 Index: simd/jcqnts2f-64.asm |
| 1436 =================================================================== |
| 1437 --- simd/jcqnts2f-64.asm (revision 677) |
| 1438 +++ simd/jcqnts2f-64.asm (working copy) |
| 1439 @@ -36,7 +36,7 @@ |
| 1440 ; r12 = FAST_FLOAT * workspace |
| 1441 |
| 1442 align 16 |
| 1443 - global EXTN(jsimd_convsamp_float_sse2) |
| 1444 + global EXTN(jsimd_convsamp_float_sse2) PRIVATE |
| 1445 |
| 1446 EXTN(jsimd_convsamp_float_sse2): |
| 1447 push rbp |
| 1448 @@ -110,7 +110,7 @@ |
| 1449 ; r12 = FAST_FLOAT * workspace |
| 1450 |
| 1451 align 16 |
| 1452 - global EXTN(jsimd_quantize_float_sse2) |
| 1453 + global EXTN(jsimd_quantize_float_sse2) PRIVATE |
| 1454 |
| 1455 EXTN(jsimd_quantize_float_sse2): |
| 1456 push rbp |
| 1457 Index: simd/jcqnt3dn.asm |
| 1458 =================================================================== |
| 1459 --- simd/jcqnt3dn.asm (revision 677) |
| 1460 +++ simd/jcqnt3dn.asm (working copy) |
| 1461 @@ -35,7 +35,7 @@ |
| 1462 %define workspace ebp+16 ; FAST_FLOAT * workspace |
| 1463 |
| 1464 align 16 |
| 1465 - global EXTN(jsimd_convsamp_float_3dnow) |
| 1466 + global EXTN(jsimd_convsamp_float_3dnow) PRIVATE |
| 1467 |
| 1468 EXTN(jsimd_convsamp_float_3dnow): |
| 1469 push ebp |
| 1470 @@ -138,7 +138,7 @@ |
| 1471 %define workspace ebp+16 ; FAST_FLOAT * workspace |
| 1472 |
| 1473 align 16 |
| 1474 - global EXTN(jsimd_quantize_float_3dnow) |
| 1475 + global EXTN(jsimd_quantize_float_3dnow) PRIVATE |
| 1476 |
| 1477 EXTN(jsimd_quantize_float_3dnow): |
| 1478 push ebp |
| 1479 Index: simd/jcsamss2.asm |
| 1480 =================================================================== |
| 1481 --- simd/jcsamss2.asm (revision 677) |
| 1482 +++ simd/jcsamss2.asm (working copy) |
| 1483 @@ -40,7 +40,7 @@ |
| 1484 %define output_data(b) (b)+28 ; JSAMPARRAY output_data |
| 1485 |
| 1486 align 16 |
| 1487 - global EXTN(jsimd_h2v1_downsample_sse2) |
| 1488 + global EXTN(jsimd_h2v1_downsample_sse2) PRIVATE |
| 1489 |
| 1490 EXTN(jsimd_h2v1_downsample_sse2): |
| 1491 push ebp |
| 1492 @@ -195,7 +195,7 @@ |
| 1493 %define output_data(b) (b)+28 ; JSAMPARRAY output_data |
| 1494 |
| 1495 align 16 |
| 1496 - global EXTN(jsimd_h2v2_downsample_sse2) |
| 1497 + global EXTN(jsimd_h2v2_downsample_sse2) PRIVATE |
| 1498 |
| 1499 EXTN(jsimd_h2v2_downsample_sse2): |
| 1500 push ebp |
| 1501 Index: simd/jimmxint.asm |
| 1502 =================================================================== |
| 1503 --- simd/jimmxint.asm (revision 677) |
| 1504 +++ simd/jimmxint.asm (working copy) |
| 1505 @@ -66,7 +66,7 @@ |
| 1506 SECTION SEG_CONST |
| 1507 |
| 1508 alignz 16 |
| 1509 - global EXTN(jconst_idct_islow_mmx) |
| 1510 + global EXTN(jconst_idct_islow_mmx) PRIVATE |
| 1511 |
| 1512 EXTN(jconst_idct_islow_mmx): |
| 1513 |
| 1514 @@ -107,7 +107,7 @@ |
| 1515 ; JCOEF workspace[DCTSIZE2] |
| 1516 |
| 1517 align 16 |
| 1518 - global EXTN(jsimd_idct_islow_mmx) |
| 1519 + global EXTN(jsimd_idct_islow_mmx) PRIVATE |
| 1520 |
| 1521 EXTN(jsimd_idct_islow_mmx): |
| 1522 push ebp |
| 1523 Index: simd/jcgrymmx.asm |
| 1524 =================================================================== |
| 1525 --- simd/jcgrymmx.asm (revision 677) |
| 1526 +++ simd/jcgrymmx.asm (working copy) |
| 1527 @@ -41,7 +41,7 @@ |
| 1528 %define gotptr wk(0)-SIZEOF_POINTER ; void * gotptr |
| 1529 |
| 1530 align 16 |
| 1531 - global EXTN(jsimd_rgb_gray_convert_mmx) |
| 1532 + global EXTN(jsimd_rgb_gray_convert_mmx) PRIVATE |
| 1533 |
| 1534 EXTN(jsimd_rgb_gray_convert_mmx): |
| 1535 push ebp |
| 1536 Index: simd/jfss2int.asm |
| 1537 =================================================================== |
| 1538 --- simd/jfss2int.asm (revision 677) |
| 1539 +++ simd/jfss2int.asm (working copy) |
| 1540 @@ -66,7 +66,7 @@ |
| 1541 SECTION SEG_CONST |
| 1542 |
| 1543 alignz 16 |
| 1544 - global EXTN(jconst_fdct_islow_sse2) |
| 1545 + global EXTN(jconst_fdct_islow_sse2) PRIVATE |
| 1546 |
| 1547 EXTN(jconst_fdct_islow_sse2): |
| 1548 |
| 1549 @@ -101,7 +101,7 @@ |
| 1550 %define WK_NUM 6 |
| 1551 |
| 1552 align 16 |
| 1553 - global EXTN(jsimd_fdct_islow_sse2) |
| 1554 + global EXTN(jsimd_fdct_islow_sse2) PRIVATE |
| 1555 |
| 1556 EXTN(jsimd_fdct_islow_sse2): |
| 1557 push ebp |
| 1558 Index: simd/jcgryss2.asm |
| 1559 =================================================================== |
| 1560 --- simd/jcgryss2.asm (revision 677) |
| 1561 +++ simd/jcgryss2.asm (working copy) |
| 1562 @@ -39,7 +39,7 @@ |
| 1563 |
| 1564 align 16 |
| 1565 |
| 1566 - global EXTN(jsimd_rgb_gray_convert_sse2) |
| 1567 + global EXTN(jsimd_rgb_gray_convert_sse2) PRIVATE |
| 1568 |
| 1569 EXTN(jsimd_rgb_gray_convert_sse2): |
| 1570 push ebp |
| 1571 Index: simd/jccolmmx.asm |
| 1572 =================================================================== |
| 1573 --- simd/jccolmmx.asm (revision 677) |
| 1574 +++ simd/jccolmmx.asm (working copy) |
| 1575 @@ -37,7 +37,7 @@ |
| 1576 SECTION SEG_CONST |
| 1577 |
| 1578 alignz 16 |
| 1579 - global EXTN(jconst_rgb_ycc_convert_mmx) |
| 1580 + global EXTN(jconst_rgb_ycc_convert_mmx) PRIVATE |
| 1581 |
| 1582 EXTN(jconst_rgb_ycc_convert_mmx): |
| 1583 |
| 1584 Index: simd/jimmxred.asm |
| 1585 =================================================================== |
| 1586 --- simd/jimmxred.asm (revision 677) |
| 1587 +++ simd/jimmxred.asm (working copy) |
| 1588 @@ -72,7 +72,7 @@ |
| 1589 SECTION SEG_CONST |
| 1590 |
| 1591 alignz 16 |
| 1592 - global EXTN(jconst_idct_red_mmx) |
| 1593 + global EXTN(jconst_idct_red_mmx) PRIVATE |
| 1594 |
| 1595 EXTN(jconst_idct_red_mmx): |
| 1596 |
| 1597 @@ -115,7 +115,7 @@ |
| 1598 ; JCOEF workspace[DCTSIZE2] |
| 1599 |
| 1600 align 16 |
| 1601 - global EXTN(jsimd_idct_4x4_mmx) |
| 1602 + global EXTN(jsimd_idct_4x4_mmx) PRIVATE |
| 1603 |
| 1604 EXTN(jsimd_idct_4x4_mmx): |
| 1605 push ebp |
| 1606 @@ -503,7 +503,7 @@ |
| 1607 %define output_col(b) (b)+20 ; JDIMENSION output_col |
| 1608 |
| 1609 align 16 |
| 1610 - global EXTN(jsimd_idct_2x2_mmx) |
| 1611 + global EXTN(jsimd_idct_2x2_mmx) PRIVATE |
| 1612 |
| 1613 EXTN(jsimd_idct_2x2_mmx): |
| 1614 push ebp |
| 1615 Index: simd/jsimdext.inc |
| 1616 =================================================================== |
| 1617 --- simd/jsimdext.inc (revision 677) |
| 1618 +++ simd/jsimdext.inc (working copy) |
| 1619 @@ -373,4 +373,14 @@ |
| 1620 ; |
| 1621 %include "jsimdcfg.inc" |
| 1622 |
| 1623 +; Begin chromium edits |
| 1624 +%ifdef MACHO ; ----(nasm -fmacho -DMACHO ...)-------- |
| 1625 +%define PRIVATE :private_extern |
| 1626 +%elifdef ELF ; ----(nasm -felf[64] -DELF ...)------------ |
| 1627 +%define PRIVATE :hidden |
| 1628 +%else |
| 1629 +%define PRIVATE |
| 1630 +%endif |
| 1631 +; End chromium edits |
| 1632 + |
| 1633 ; -------------------------------------------------------------------------- |
| 1634 Index: simd/jdclrmmx.asm |
| 1635 =================================================================== |
| 1636 --- simd/jdclrmmx.asm (revision 677) |
| 1637 +++ simd/jdclrmmx.asm (working copy) |
| 1638 @@ -40,7 +40,7 @@ |
| 1639 %define gotptr wk(0)-SIZEOF_POINTER ; void * gotptr |
| 1640 |
| 1641 align 16 |
| 1642 - global EXTN(jsimd_ycc_rgb_convert_mmx) |
| 1643 + global EXTN(jsimd_ycc_rgb_convert_mmx) PRIVATE |
| 1644 |
| 1645 EXTN(jsimd_ycc_rgb_convert_mmx): |
| 1646 push ebp |
| 1647 Index: simd/jccolss2.asm |
| 1648 =================================================================== |
| 1649 --- simd/jccolss2.asm (revision 677) |
| 1650 +++ simd/jccolss2.asm (working copy) |
| 1651 @@ -34,7 +34,7 @@ |
| 1652 SECTION SEG_CONST |
| 1653 |
| 1654 alignz 16 |
| 1655 - global EXTN(jconst_rgb_ycc_convert_sse2) |
| 1656 + global EXTN(jconst_rgb_ycc_convert_sse2) PRIVATE |
| 1657 |
| 1658 EXTN(jconst_rgb_ycc_convert_sse2): |
| 1659 |
1499 Index: simd/jisseflt.asm | 1660 Index: simd/jisseflt.asm |
1500 =================================================================== | 1661 =================================================================== |
1501 --- simd/jisseflt.asm» (revision 64575) | 1662 --- simd/jisseflt.asm» (revision 677) |
1502 +++ simd/jisseflt.asm (working copy) | 1663 +++ simd/jisseflt.asm (working copy) |
1503 @@ -37,7 +37,7 @@ | 1664 @@ -37,7 +37,7 @@ |
1504 SECTION SEG_CONST | 1665 SECTION SEG_CONST |
1505 | 1666 |
1506 alignz 16 | 1667 alignz 16 |
1507 - global EXTN(jconst_idct_float_sse) | 1668 - global EXTN(jconst_idct_float_sse) |
1508 + global EXTN(jconst_idct_float_sse) PRIVATE | 1669 + global EXTN(jconst_idct_float_sse) PRIVATE |
1509 | 1670 |
1510 EXTN(jconst_idct_float_sse): | 1671 EXTN(jconst_idct_float_sse): |
1511 | 1672 |
1512 @@ -73,7 +73,7 @@ | 1673 @@ -73,7 +73,7 @@ |
1513 ; FAST_FLOAT workspace[DCTSIZE2] | 1674 ; FAST_FLOAT workspace[DCTSIZE2] |
1514 | 1675 |
1515 align 16 | 1676 align 16 |
1516 - global EXTN(jsimd_idct_float_sse) | 1677 - global EXTN(jsimd_idct_float_sse) |
1517 + global EXTN(jsimd_idct_float_sse) PRIVATE | 1678 + global EXTN(jsimd_idct_float_sse) PRIVATE |
1518 | 1679 |
1519 EXTN(jsimd_idct_float_sse): | 1680 EXTN(jsimd_idct_float_sse): |
1520 push ebp | 1681 push ebp |
1521 Index: simd/jcqnts2i-64.asm | 1682 Index: simd/jcqnts2i-64.asm |
1522 =================================================================== | 1683 =================================================================== |
1523 --- simd/jcqnts2i-64.asm» (revision 64575) | 1684 --- simd/jcqnts2i-64.asm» (revision 677) |
1524 +++ simd/jcqnts2i-64.asm (working copy) | 1685 +++ simd/jcqnts2i-64.asm (working copy) |
1525 @@ -36,7 +36,7 @@ | 1686 @@ -36,7 +36,7 @@ |
1526 ; r12 = DCTELEM * workspace | 1687 ; r12 = DCTELEM * workspace |
1527 | 1688 |
1528 align 16 | 1689 align 16 |
1529 - global EXTN(jsimd_convsamp_sse2) | 1690 - global EXTN(jsimd_convsamp_sse2) |
1530 + global EXTN(jsimd_convsamp_sse2) PRIVATE | 1691 + global EXTN(jsimd_convsamp_sse2) PRIVATE |
1531 | 1692 |
1532 EXTN(jsimd_convsamp_sse2): | 1693 EXTN(jsimd_convsamp_sse2): |
1533 push rbp | 1694 push rbp |
1534 @@ -112,7 +112,7 @@ | 1695 @@ -112,7 +112,7 @@ |
1535 ; r12 = DCTELEM * workspace | 1696 ; r12 = DCTELEM * workspace |
1536 | 1697 |
1537 align 16 | 1698 align 16 |
1538 - global EXTN(jsimd_quantize_sse2) | 1699 - global EXTN(jsimd_quantize_sse2) |
1539 + global EXTN(jsimd_quantize_sse2) PRIVATE | 1700 + global EXTN(jsimd_quantize_sse2) PRIVATE |
1540 | 1701 |
1541 EXTN(jsimd_quantize_sse2): | 1702 EXTN(jsimd_quantize_sse2): |
1542 push rbp | 1703 push rbp |
1543 Index: simd/jcclrss2.asm | |
1544 =================================================================== | |
1545 --- simd/jcclrss2.asm (revision 64575) | |
1546 +++ simd/jcclrss2.asm (working copy) | |
1547 @@ -16,8 +16,12 @@ | |
1548 %include "jcolsamp.inc" | |
1549 | |
1550 ; -------------------------------------------------------------------------- | |
1551 +%ifndef NEED_SECTION | |
1552 +%define NEED_SECTION | |
1553 SECTION SEG_TEXT | |
1554 BITS 32 | |
1555 +%endif | |
1556 + | |
1557 ; | |
1558 ; Convert some rows of samples to the output colorspace. | |
1559 ; | |
1560 @@ -40,7 +44,7 @@ | |
1561 | |
1562 align 16 | |
1563 | |
1564 - global EXTN(jsimd_rgb_ycc_convert_sse2) | |
1565 + global EXTN(jsimd_rgb_ycc_convert_sse2) PRIVATE | |
1566 | |
1567 EXTN(jsimd_rgb_ycc_convert_sse2): | |
1568 push ebp | |
1569 Index: simd/jiss2red.asm | |
1570 =================================================================== | |
1571 --- simd/jiss2red.asm (revision 64575) | |
1572 +++ simd/jiss2red.asm (working copy) | |
1573 @@ -72,7 +72,7 @@ | |
1574 SECTION SEG_CONST | |
1575 | |
1576 alignz 16 | |
1577 - global EXTN(jconst_idct_red_sse2) | |
1578 + global EXTN(jconst_idct_red_sse2) PRIVATE | |
1579 | |
1580 EXTN(jconst_idct_red_sse2): | |
1581 | |
1582 @@ -113,7 +113,7 @@ | |
1583 %define WK_NUM 2 | |
1584 | |
1585 align 16 | |
1586 - global EXTN(jsimd_idct_4x4_sse2) | |
1587 + global EXTN(jsimd_idct_4x4_sse2) PRIVATE | |
1588 | |
1589 EXTN(jsimd_idct_4x4_sse2): | |
1590 push ebp | |
1591 @@ -424,7 +424,7 @@ | |
1592 %define output_col(b) (b)+20 ; JDIMENSION output_col | |
1593 | |
1594 align 16 | |
1595 - global EXTN(jsimd_idct_2x2_sse2) | |
1596 + global EXTN(jsimd_idct_2x2_sse2) PRIVATE | |
1597 | |
1598 EXTN(jsimd_idct_2x2_sse2): | |
1599 push ebp | |
1600 Index: simd/jdclrss2.asm | 1704 Index: simd/jdclrss2.asm |
1601 =================================================================== | 1705 =================================================================== |
1602 --- simd/jdclrss2.asm» (revision 64575) | 1706 --- simd/jdclrss2.asm» (revision 677) |
1603 +++ simd/jdclrss2.asm (working copy) | 1707 +++ simd/jdclrss2.asm (working copy) |
1604 @@ -19,8 +19,12 @@ | 1708 @@ -40,7 +40,7 @@ |
1605 %include "jcolsamp.inc" | |
1606 » » » » | |
1607 ; -------------------------------------------------------------------------- | |
1608 +%ifndef NEED_SECTION | |
1609 +%define NEED_SECTION | |
1610 » SECTION»SEG_TEXT | |
1611 » BITS» 32 | |
1612 +%endif | |
1613 + | |
1614 ; | |
1615 ; Convert some rows of samples to the output colorspace. | |
1616 ; | |
1617 @@ -42,7 +46,7 @@ | |
1618 %define gotptr wk(0)-SIZEOF_POINTER ; void * gotptr | 1709 %define gotptr wk(0)-SIZEOF_POINTER ; void * gotptr |
1619 | 1710 |
1620 align 16 | 1711 align 16 |
1621 - global EXTN(jsimd_ycc_rgb_convert_sse2) | 1712 - global EXTN(jsimd_ycc_rgb_convert_sse2) |
1622 + global EXTN(jsimd_ycc_rgb_convert_sse2) PRIVATE | 1713 + global EXTN(jsimd_ycc_rgb_convert_sse2) PRIVATE |
1623 | 1714 |
1624 EXTN(jsimd_ycc_rgb_convert_sse2): | 1715 EXTN(jsimd_ycc_rgb_convert_sse2): |
1625 push ebp | 1716 push ebp |
1626 @@ -304,6 +308,41 @@ | 1717 @@ -302,6 +302,41 @@ |
1627 movdqa xmmA,xmmD | 1718 movdqa xmmA,xmmD |
1628 sub ecx, byte SIZEOF_XMMWORD | 1719 sub ecx, byte SIZEOF_XMMWORD |
1629 .column_st15: | 1720 .column_st15: |
1630 +%ifdef STRICT_MEMORY_ACCESS | 1721 +%ifdef STRICT_MEMORY_ACCESS |
1631 + ; Store the lower 8 bytes of xmmA to the output when it has enough | 1722 + ; Store the lower 8 bytes of xmmA to the output when it has enough |
1632 + ; space. | 1723 + ; space. |
1633 + cmp ecx, byte SIZEOF_MMWORD | 1724 + cmp ecx, byte SIZEOF_MMWORD |
1634 + jb short .column_st7 | 1725 + jb short .column_st7 |
1635 + movq MMWORD [edi], xmmA | 1726 + movq MMWORD [edi], xmmA |
1636 + add edi, byte SIZEOF_MMWORD | 1727 + add edi, byte SIZEOF_MMWORD |
(...skipping 21 matching lines...) Expand all Loading... |
1658 +.column_st1: | 1749 +.column_st1: |
1659 + ; Store the lower 1 byte of eax to the output when it has enough | 1750 + ; Store the lower 1 byte of eax to the output when it has enough |
1660 + ; space. | 1751 + ; space. |
1661 + test ecx, ecx | 1752 + test ecx, ecx |
1662 + jz short .nextrow | 1753 + jz short .nextrow |
1663 + mov BYTE [edi], al | 1754 + mov BYTE [edi], al |
1664 +%else | 1755 +%else |
1665 mov eax,ecx | 1756 mov eax,ecx |
1666 xor ecx, byte 0x0F | 1757 xor ecx, byte 0x0F |
1667 shl ecx, 2 | 1758 shl ecx, 2 |
1668 @@ -343,6 +382,7 @@ | 1759 @@ -341,6 +376,7 @@ |
1669 por xmmE,xmmC | 1760 por xmmE,xmmC |
1670 .adj0: ; ---------------- | 1761 .adj0: ; ---------------- |
1671 maskmovdqu xmmA,xmmE ; movntdqu XMMWORD [edi], xmmA | 1762 maskmovdqu xmmA,xmmE ; movntdqu XMMWORD [edi], xmmA |
1672 +%endif ; STRICT_MEMORY_ACCESS ; --------------- | 1763 +%endif ; STRICT_MEMORY_ACCESS ; --------------- |
1673 | 1764 |
1674 %else ; RGB_PIXELSIZE == 4 ; ----------- | 1765 %else ; RGB_PIXELSIZE == 4 ; ----------- |
1675 | 1766 |
1676 @@ -428,6 +468,22 @@ | 1767 @@ -426,6 +462,22 @@ |
1677 movdqa xmmA,xmmD | 1768 movdqa xmmA,xmmD |
1678 sub ecx, byte SIZEOF_XMMWORD/4 | 1769 sub ecx, byte SIZEOF_XMMWORD/4 |
1679 .column_st15: | 1770 .column_st15: |
1680 +%ifdef STRICT_MEMORY_ACCESS | 1771 +%ifdef STRICT_MEMORY_ACCESS |
1681 + ; Store two pixels (8 bytes) of xmmA to the output when it has enough | 1772 + ; Store two pixels (8 bytes) of xmmA to the output when it has enough |
1682 + ; space. | 1773 + ; space. |
1683 + cmp ecx, byte SIZEOF_XMMWORD/8 | 1774 + cmp ecx, byte SIZEOF_XMMWORD/8 |
1684 + jb short .column_st7 | 1775 + jb short .column_st7 |
1685 + movq MMWORD [edi], xmmA | 1776 + movq MMWORD [edi], xmmA |
1686 + add edi, byte SIZEOF_XMMWORD/8*4 | 1777 + add edi, byte SIZEOF_XMMWORD/8*4 |
1687 + sub ecx, byte SIZEOF_XMMWORD/8 | 1778 + sub ecx, byte SIZEOF_XMMWORD/8 |
1688 + psrldq xmmA, SIZEOF_XMMWORD/8*4 | 1779 + psrldq xmmA, SIZEOF_XMMWORD/8*4 |
1689 +.column_st7: | 1780 +.column_st7: |
1690 + ; Store one pixel (4 bytes) of xmmA to the output when it has enough | 1781 + ; Store one pixel (4 bytes) of xmmA to the output when it has enough |
1691 + ; space. | 1782 + ; space. |
1692 + test ecx, ecx | 1783 + test ecx, ecx |
1693 + jz short .nextrow | 1784 + jz short .nextrow |
1694 + movd DWORD [edi], xmmA | 1785 + movd DWORD [edi], xmmA |
1695 +%else | 1786 +%else |
1696 cmp ecx, byte SIZEOF_XMMWORD/16 | 1787 cmp ecx, byte SIZEOF_XMMWORD/16 |
1697 jb short .nextrow | 1788 jb short .nextrow |
1698 mov eax,ecx | 1789 mov eax,ecx |
1699 @@ -467,6 +523,7 @@ | 1790 @@ -465,6 +517,7 @@ |
1700 por xmmE,xmmG | 1791 por xmmE,xmmG |
1701 .adj0: ; ---------------- | 1792 .adj0: ; ---------------- |
1702 maskmovdqu xmmA,xmmE ; movntdqu XMMWORD [edi], xmmA | 1793 maskmovdqu xmmA,xmmE ; movntdqu XMMWORD [edi], xmmA |
1703 +%endif ; STRICT_MEMORY_ACCESS ; --------------- | 1794 +%endif ; STRICT_MEMORY_ACCESS ; --------------- |
1704 | 1795 |
1705 %endif ; RGB_PIXELSIZE ; --------------- | 1796 %endif ; RGB_PIXELSIZE ; --------------- |
1706 | 1797 |
1707 Index: simd/jdmerss2.asm | |
1708 =================================================================== | |
1709 --- simd/jdmerss2.asm (revision 64575) | |
1710 +++ simd/jdmerss2.asm (working copy) | |
1711 @@ -35,7 +35,7 @@ | |
1712 SECTION SEG_CONST | |
1713 | |
1714 alignz 16 | |
1715 - global EXTN(jconst_merged_upsample_sse2) | |
1716 + global EXTN(jconst_merged_upsample_sse2) PRIVATE | |
1717 | |
1718 EXTN(jconst_merged_upsample_sse2): | |
1719 | |
1720 Index: simd/jcqntsse.asm | 1798 Index: simd/jcqntsse.asm |
1721 =================================================================== | 1799 =================================================================== |
1722 --- simd/jcqntsse.asm» (revision 64575) | 1800 --- simd/jcqntsse.asm» (revision 677) |
1723 +++ simd/jcqntsse.asm (working copy) | 1801 +++ simd/jcqntsse.asm (working copy) |
1724 @@ -35,7 +35,7 @@ | 1802 @@ -35,7 +35,7 @@ |
1725 %define workspace ebp+16 ; FAST_FLOAT * workspace | 1803 %define workspace ebp+16 ; FAST_FLOAT * workspace |
1726 | 1804 |
1727 align 16 | 1805 align 16 |
1728 - global EXTN(jsimd_convsamp_float_sse) | 1806 - global EXTN(jsimd_convsamp_float_sse) |
1729 + global EXTN(jsimd_convsamp_float_sse) PRIVATE | 1807 + global EXTN(jsimd_convsamp_float_sse) PRIVATE |
1730 | 1808 |
1731 EXTN(jsimd_convsamp_float_sse): | 1809 EXTN(jsimd_convsamp_float_sse): |
1732 push ebp | 1810 push ebp |
1733 @@ -138,7 +138,7 @@ | 1811 @@ -138,7 +138,7 @@ |
1734 %define workspace ebp+16 ; FAST_FLOAT * workspace | 1812 %define workspace ebp+16 ; FAST_FLOAT * workspace |
1735 | 1813 |
1736 align 16 | 1814 align 16 |
1737 - global EXTN(jsimd_quantize_float_sse) | 1815 - global EXTN(jsimd_quantize_float_sse) |
1738 + global EXTN(jsimd_quantize_float_sse) PRIVATE | 1816 + global EXTN(jsimd_quantize_float_sse) PRIVATE |
1739 | 1817 |
1740 EXTN(jsimd_quantize_float_sse): | 1818 EXTN(jsimd_quantize_float_sse): |
1741 push ebp | 1819 push ebp |
1742 Index: simd/jfss2fst-64.asm | |
1743 =================================================================== | |
1744 --- simd/jfss2fst-64.asm (revision 64575) | |
1745 +++ simd/jfss2fst-64.asm (working copy) | |
1746 @@ -53,7 +53,7 @@ | |
1747 %define CONST_SHIFT (16 - PRE_MULTIPLY_SCALE_BITS - CONST_BITS) | |
1748 | |
1749 alignz 16 | |
1750 - global EXTN(jconst_fdct_ifast_sse2) | |
1751 + global EXTN(jconst_fdct_ifast_sse2) PRIVATE | |
1752 | |
1753 EXTN(jconst_fdct_ifast_sse2): | |
1754 | |
1755 @@ -80,7 +80,7 @@ | |
1756 %define WK_NUM 2 | |
1757 | |
1758 align 16 | |
1759 - global EXTN(jsimd_fdct_ifast_sse2) | |
1760 + global EXTN(jsimd_fdct_ifast_sse2) PRIVATE | |
1761 | |
1762 EXTN(jsimd_fdct_ifast_sse2): | |
1763 push rbp | |
1764 Index: simd/jiss2int-64.asm | 1820 Index: simd/jiss2int-64.asm |
1765 =================================================================== | 1821 =================================================================== |
1766 --- simd/jiss2int-64.asm» (revision 64575) | 1822 --- simd/jiss2int-64.asm» (revision 677) |
1767 +++ simd/jiss2int-64.asm (working copy) | 1823 +++ simd/jiss2int-64.asm (working copy) |
1768 @@ -67,7 +67,7 @@ | 1824 @@ -67,7 +67,7 @@ |
1769 SECTION SEG_CONST | 1825 SECTION SEG_CONST |
1770 | 1826 |
1771 alignz 16 | 1827 alignz 16 |
1772 - global EXTN(jconst_idct_islow_sse2) | 1828 - global EXTN(jconst_idct_islow_sse2) |
1773 + global EXTN(jconst_idct_islow_sse2) PRIVATE | 1829 + global EXTN(jconst_idct_islow_sse2) PRIVATE |
1774 | 1830 |
1775 EXTN(jconst_idct_islow_sse2): | 1831 EXTN(jconst_idct_islow_sse2): |
1776 | 1832 |
1777 @@ -106,7 +106,7 @@ | 1833 @@ -106,7 +106,7 @@ |
1778 %define WK_NUM 12 | 1834 %define WK_NUM 12 |
1779 | 1835 |
1780 align 16 | 1836 align 16 |
1781 - global EXTN(jsimd_idct_islow_sse2) | 1837 - global EXTN(jsimd_idct_islow_sse2) |
1782 + global EXTN(jsimd_idct_islow_sse2) PRIVATE | 1838 + global EXTN(jsimd_idct_islow_sse2) PRIVATE |
1783 | 1839 |
1784 EXTN(jsimd_idct_islow_sse2): | 1840 EXTN(jsimd_idct_islow_sse2): |
1785 push rbp | 1841 push rbp |
1786 Index: simd/jfmmxfst.asm | 1842 Index: simd/jfmmxfst.asm |
1787 =================================================================== | 1843 =================================================================== |
1788 --- simd/jfmmxfst.asm» (revision 64575) | 1844 --- simd/jfmmxfst.asm» (revision 677) |
1789 +++ simd/jfmmxfst.asm (working copy) | 1845 +++ simd/jfmmxfst.asm (working copy) |
1790 @@ -52,7 +52,7 @@ | 1846 @@ -52,7 +52,7 @@ |
1791 %define CONST_SHIFT (16 - PRE_MULTIPLY_SCALE_BITS - CONST_BITS) | 1847 %define CONST_SHIFT (16 - PRE_MULTIPLY_SCALE_BITS - CONST_BITS) |
1792 | 1848 |
1793 alignz 16 | 1849 alignz 16 |
1794 - global EXTN(jconst_fdct_ifast_mmx) | 1850 - global EXTN(jconst_fdct_ifast_mmx) |
1795 + global EXTN(jconst_fdct_ifast_mmx) PRIVATE | 1851 + global EXTN(jconst_fdct_ifast_mmx) PRIVATE |
1796 | 1852 |
1797 EXTN(jconst_fdct_ifast_mmx): | 1853 EXTN(jconst_fdct_ifast_mmx): |
1798 | 1854 |
1799 @@ -80,7 +80,7 @@ | 1855 @@ -80,7 +80,7 @@ |
1800 %define WK_NUM 2 | 1856 %define WK_NUM 2 |
1801 | 1857 |
1802 align 16 | 1858 align 16 |
1803 - global EXTN(jsimd_fdct_ifast_mmx) | 1859 - global EXTN(jsimd_fdct_ifast_mmx) |
1804 + global EXTN(jsimd_fdct_ifast_mmx) PRIVATE | 1860 + global EXTN(jsimd_fdct_ifast_mmx) PRIVATE |
1805 | 1861 |
1806 EXTN(jsimd_fdct_ifast_mmx): | 1862 EXTN(jsimd_fdct_ifast_mmx): |
1807 push ebp | 1863 push ebp |
OLD | NEW |