Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(388)

Side by Side Diff: google.patch

Issue 9232002: Update libjpeg-turbo to 1.2. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/deps/third_party/libjpeg_turbo/
Patch Set: '' Created 8 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « README-turbo.txt ('k') | jccolor.c » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 Index: jdmarker.c 1 Index: jdmarker.c
2 =================================================================== 2 ===================================================================
3 --- jdmarker.c» (revision 722) 3 --- jdmarker.c» (revision 733)
4 +++ jdmarker.c (working copy) 4 +++ jdmarker.c (working copy)
5 @@ -906,7 +906,7 @@ 5 @@ -906,7 +906,7 @@
6 } 6 }
7 7
8 if (cinfo->marker->discarded_bytes != 0) { 8 if (cinfo->marker->discarded_bytes != 0) {
9 - WARNMS2(cinfo, JWRN_EXTRANEOUS_DATA, cinfo->marker->discarded_bytes, c); 9 - WARNMS2(cinfo, JWRN_EXTRANEOUS_DATA, cinfo->marker->discarded_bytes, c);
10 + TRACEMS2(cinfo, 1, JWRN_EXTRANEOUS_DATA, cinfo->marker->discarded_bytes, c) ; 10 + TRACEMS2(cinfo, 1, JWRN_EXTRANEOUS_DATA, cinfo->marker->discarded_bytes, c) ;
11 cinfo->marker->discarded_bytes = 0; 11 cinfo->marker->discarded_bytes = 0;
12 } 12 }
13 13
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after
159 @@ -1009,6 +1146,7 @@ 159 @@ -1009,6 +1146,7 @@
160 break; 160 break;
161 161
162 case M_SOS: 162 case M_SOS:
163 + mjpg_load_huff_tables(cinfo); 163 + mjpg_load_huff_tables(cinfo);
164 if (! get_sos(cinfo)) 164 if (! get_sos(cinfo))
165 return JPEG_SUSPENDED; 165 return JPEG_SUSPENDED;
166 cinfo->unread_marker = 0; /* processed the marker */ 166 cinfo->unread_marker = 0; /* processed the marker */
167 Index: jmorecfg.h 167 Index: jmorecfg.h
168 =================================================================== 168 ===================================================================
169 --- jmorecfg.h» (revision 722) 169 --- jmorecfg.h» (revision 733)
170 +++ jmorecfg.h (working copy) 170 +++ jmorecfg.h (working copy)
171 @@ -153,14 +153,18 @@ 171 @@ -153,14 +153,18 @@
172 /* INT16 must hold at least the values -32768..32767. */ 172 /* INT16 must hold at least the values -32768..32767. */
173 173
174 #ifndef XMD_H /* X11/xmd.h correctly defines INT16 */ 174 #ifndef XMD_H /* X11/xmd.h correctly defines INT16 */
175 +#ifndef _BASETSD_H_ /* basetsd.h correctly defines INT32 */ 175 +#ifndef _BASETSD_H_ /* basetsd.h correctly defines INT32 */
176 typedef short INT16; 176 typedef short INT16;
177 #endif 177 #endif
178 +#endif 178 +#endif
179 179
(...skipping 16 matching lines...) Expand all
196 #define FAR far 196 #define FAR far
197 #else 197 #else
198 #define FAR 198 #define FAR
199 #endif 199 #endif
200 +#endif 200 +#endif
201 201
202 202
203 /* 203 /*
204 Index: jpeglib.h 204 Index: jpeglib.h
205 =================================================================== 205 ===================================================================
206 --- jpeglib.h» (revision 722) 206 --- jpeglib.h» (revision 733)
207 +++ jpeglib.h (working copy) 207 +++ jpeglib.h (working copy)
208 @@ -15,6 +15,10 @@ 208 @@ -15,6 +15,10 @@
209 #ifndef JPEGLIB_H 209 #ifndef JPEGLIB_H
210 #define JPEGLIB_H 210 #define JPEGLIB_H
211 211
212 +/* Begin chromium edits */ 212 +/* Begin chromium edits */
213 +#include "jpeglibmangler.h" 213 +#include "jpeglibmangler.h"
214 +/* End chromium edits */ 214 +/* End chromium edits */
215 + 215 +
216 /* 216 /*
(...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after
329 +#define jpeg_get_large chromium_jpeg_get_large 329 +#define jpeg_get_large chromium_jpeg_get_large
330 +#define jpeg_free_large chromium_jpeg_free_large 330 +#define jpeg_free_large chromium_jpeg_free_large
331 +#define jpeg_mem_available chromium_jpeg_mem_available 331 +#define jpeg_mem_available chromium_jpeg_mem_available
332 +#define jpeg_open_backing_store chromium_jpeg_open_backing_store 332 +#define jpeg_open_backing_store chromium_jpeg_open_backing_store
333 +#define jpeg_mem_init chromium_jpeg_mem_init 333 +#define jpeg_mem_init chromium_jpeg_mem_init
334 +#define jpeg_mem_term chromium_jpeg_mem_term 334 +#define jpeg_mem_term chromium_jpeg_mem_term
335 + 335 +
336 +#endif // THIRD_PARTY_LIBJPEG_TURBO_JPEGLIBMANGLER_H_ 336 +#endif // THIRD_PARTY_LIBJPEG_TURBO_JPEGLIBMANGLER_H_
337 Index: simd/jcgrass2-64.asm 337 Index: simd/jcgrass2-64.asm
338 =================================================================== 338 ===================================================================
339 --- simd/jcgrass2-64.asm» (revision 722) 339 --- simd/jcgrass2-64.asm» (revision 733)
340 +++ simd/jcgrass2-64.asm (working copy) 340 +++ simd/jcgrass2-64.asm (working copy)
341 @@ -30,7 +30,7 @@ 341 @@ -30,7 +30,7 @@
342 SECTION SEG_CONST 342 SECTION SEG_CONST
343 343
344 alignz 16 344 alignz 16
345 - global EXTN(jconst_rgb_gray_convert_sse2) 345 - global EXTN(jconst_rgb_gray_convert_sse2)
346 + global EXTN(jconst_rgb_gray_convert_sse2) PRIVATE 346 + global EXTN(jconst_rgb_gray_convert_sse2) PRIVATE
347 347
348 EXTN(jconst_rgb_gray_convert_sse2): 348 EXTN(jconst_rgb_gray_convert_sse2):
349 349
350 Index: simd/jiss2fst.asm 350 Index: simd/jiss2fst.asm
351 =================================================================== 351 ===================================================================
352 --- simd/jiss2fst.asm» (revision 722) 352 --- simd/jiss2fst.asm» (revision 733)
353 +++ simd/jiss2fst.asm (working copy) 353 +++ simd/jiss2fst.asm (working copy)
354 @@ -59,7 +59,7 @@ 354 @@ -59,7 +59,7 @@
355 %define CONST_SHIFT (16 - PRE_MULTIPLY_SCALE_BITS - CONST_BITS) 355 %define CONST_SHIFT (16 - PRE_MULTIPLY_SCALE_BITS - CONST_BITS)
356 356
357 alignz 16 357 alignz 16
358 - global EXTN(jconst_idct_ifast_sse2) 358 - global EXTN(jconst_idct_ifast_sse2)
359 + global EXTN(jconst_idct_ifast_sse2) PRIVATE 359 + global EXTN(jconst_idct_ifast_sse2) PRIVATE
360 360
361 EXTN(jconst_idct_ifast_sse2): 361 EXTN(jconst_idct_ifast_sse2):
362 362
363 @@ -92,7 +92,7 @@ 363 @@ -92,7 +92,7 @@
364 %define WK_NUM 2 364 %define WK_NUM 2
365 365
366 align 16 366 align 16
367 - global EXTN(jsimd_idct_ifast_sse2) 367 - global EXTN(jsimd_idct_ifast_sse2)
368 + global EXTN(jsimd_idct_ifast_sse2) PRIVATE 368 + global EXTN(jsimd_idct_ifast_sse2) PRIVATE
369 369
370 EXTN(jsimd_idct_ifast_sse2): 370 EXTN(jsimd_idct_ifast_sse2):
371 push ebp 371 push ebp
372 Index: simd/jiss2red-64.asm 372 Index: simd/jiss2red-64.asm
373 =================================================================== 373 ===================================================================
374 --- simd/jiss2red-64.asm» (revision 722) 374 --- simd/jiss2red-64.asm» (revision 733)
375 +++ simd/jiss2red-64.asm (working copy) 375 +++ simd/jiss2red-64.asm (working copy)
376 @@ -73,7 +73,7 @@ 376 @@ -73,7 +73,7 @@
377 SECTION SEG_CONST 377 SECTION SEG_CONST
378 378
379 alignz 16 379 alignz 16
380 - global EXTN(jconst_idct_red_sse2) 380 - global EXTN(jconst_idct_red_sse2)
381 + global EXTN(jconst_idct_red_sse2) PRIVATE 381 + global EXTN(jconst_idct_red_sse2) PRIVATE
382 382
383 EXTN(jconst_idct_red_sse2): 383 EXTN(jconst_idct_red_sse2):
384 384
(...skipping 10 matching lines...) Expand all
395 ; r13 = JDIMENSION output_col 395 ; r13 = JDIMENSION output_col
396 396
397 align 16 397 align 16
398 - global EXTN(jsimd_idct_2x2_sse2) 398 - global EXTN(jsimd_idct_2x2_sse2)
399 + global EXTN(jsimd_idct_2x2_sse2) PRIVATE 399 + global EXTN(jsimd_idct_2x2_sse2) PRIVATE
400 400
401 EXTN(jsimd_idct_2x2_sse2): 401 EXTN(jsimd_idct_2x2_sse2):
402 push rbp 402 push rbp
403 Index: simd/jcclrss2-64.asm 403 Index: simd/jcclrss2-64.asm
404 =================================================================== 404 ===================================================================
405 --- simd/jcclrss2-64.asm» (revision 722) 405 --- simd/jcclrss2-64.asm» (revision 733)
406 +++ simd/jcclrss2-64.asm (working copy) 406 +++ simd/jcclrss2-64.asm (working copy)
407 @@ -37,7 +37,7 @@ 407 @@ -37,7 +37,7 @@
408 408
409 align 16 409 align 16
410 410
411 - global EXTN(jsimd_rgb_ycc_convert_sse2) 411 - global EXTN(jsimd_rgb_ycc_convert_sse2)
412 + global EXTN(jsimd_rgb_ycc_convert_sse2) PRIVATE 412 + global EXTN(jsimd_rgb_ycc_convert_sse2) PRIVATE
413 413
414 EXTN(jsimd_rgb_ycc_convert_sse2): 414 EXTN(jsimd_rgb_ycc_convert_sse2):
415 push rbp 415 push rbp
416 Index: simd/ji3dnflt.asm 416 Index: simd/ji3dnflt.asm
417 =================================================================== 417 ===================================================================
418 --- simd/ji3dnflt.asm» (revision 722) 418 --- simd/ji3dnflt.asm» (revision 733)
419 +++ simd/ji3dnflt.asm (working copy) 419 +++ simd/ji3dnflt.asm (working copy)
420 @@ -27,7 +27,7 @@ 420 @@ -27,7 +27,7 @@
421 SECTION SEG_CONST 421 SECTION SEG_CONST
422 422
423 alignz 16 423 alignz 16
424 - global EXTN(jconst_idct_float_3dnow) 424 - global EXTN(jconst_idct_float_3dnow)
425 + global EXTN(jconst_idct_float_3dnow) PRIVATE 425 + global EXTN(jconst_idct_float_3dnow) PRIVATE
426 426
427 EXTN(jconst_idct_float_3dnow): 427 EXTN(jconst_idct_float_3dnow):
428 428
429 @@ -63,7 +63,7 @@ 429 @@ -63,7 +63,7 @@
430 ; FAST_FLOAT workspace[DCTSIZE2] 430 ; FAST_FLOAT workspace[DCTSIZE2]
431 431
432 align 16 432 align 16
433 - global EXTN(jsimd_idct_float_3dnow) 433 - global EXTN(jsimd_idct_float_3dnow)
434 + global EXTN(jsimd_idct_float_3dnow) PRIVATE 434 + global EXTN(jsimd_idct_float_3dnow) PRIVATE
435 435
436 EXTN(jsimd_idct_float_3dnow): 436 EXTN(jsimd_idct_float_3dnow):
437 push ebp 437 push ebp
438 Index: simd/jsimdcpu.asm 438 Index: simd/jsimdcpu.asm
439 =================================================================== 439 ===================================================================
440 --- simd/jsimdcpu.asm» (revision 722) 440 --- simd/jsimdcpu.asm» (revision 733)
441 +++ simd/jsimdcpu.asm (working copy) 441 +++ simd/jsimdcpu.asm (working copy)
442 @@ -29,7 +29,7 @@ 442 @@ -29,7 +29,7 @@
443 ; 443 ;
444 444
445 align 16 445 align 16
446 - global EXTN(jpeg_simd_cpu_support) 446 - global EXTN(jpeg_simd_cpu_support)
447 + global EXTN(jpeg_simd_cpu_support) PRIVATE 447 + global EXTN(jpeg_simd_cpu_support) PRIVATE
448 448
449 EXTN(jpeg_simd_cpu_support): 449 EXTN(jpeg_simd_cpu_support):
450 push ebx 450 push ebx
451 Index: simd/jdsammmx.asm 451 Index: simd/jdsammmx.asm
452 =================================================================== 452 ===================================================================
453 --- simd/jdsammmx.asm» (revision 722) 453 --- simd/jdsammmx.asm» (revision 733)
454 +++ simd/jdsammmx.asm (working copy) 454 +++ simd/jdsammmx.asm (working copy)
455 @@ -22,7 +22,7 @@ 455 @@ -22,7 +22,7 @@
456 SECTION SEG_CONST 456 SECTION SEG_CONST
457 457
458 alignz 16 458 alignz 16
459 - global EXTN(jconst_fancy_upsample_mmx) 459 - global EXTN(jconst_fancy_upsample_mmx)
460 + global EXTN(jconst_fancy_upsample_mmx) PRIVATE 460 + global EXTN(jconst_fancy_upsample_mmx) PRIVATE
461 461
462 EXTN(jconst_fancy_upsample_mmx): 462 EXTN(jconst_fancy_upsample_mmx):
463 463
(...skipping 28 matching lines...) Expand all
492 %define output_data_ptr(b) (b)+20 ; JSAMPARRAY * output_data_ptr 492 %define output_data_ptr(b) (b)+20 ; JSAMPARRAY * output_data_ptr
493 493
494 align 16 494 align 16
495 - global EXTN(jsimd_h2v2_upsample_mmx) 495 - global EXTN(jsimd_h2v2_upsample_mmx)
496 + global EXTN(jsimd_h2v2_upsample_mmx) PRIVATE 496 + global EXTN(jsimd_h2v2_upsample_mmx) PRIVATE
497 497
498 EXTN(jsimd_h2v2_upsample_mmx): 498 EXTN(jsimd_h2v2_upsample_mmx):
499 push ebp 499 push ebp
500 Index: simd/jdmerss2-64.asm 500 Index: simd/jdmerss2-64.asm
501 =================================================================== 501 ===================================================================
502 --- simd/jdmerss2-64.asm» (revision 722) 502 --- simd/jdmerss2-64.asm» (revision 733)
503 +++ simd/jdmerss2-64.asm (working copy) 503 +++ simd/jdmerss2-64.asm (working copy)
504 @@ -35,7 +35,7 @@ 504 @@ -35,7 +35,7 @@
505 SECTION SEG_CONST 505 SECTION SEG_CONST
506 506
507 alignz 16 507 alignz 16
508 - global EXTN(jconst_merged_upsample_sse2) 508 - global EXTN(jconst_merged_upsample_sse2)
509 + global EXTN(jconst_merged_upsample_sse2) PRIVATE 509 + global EXTN(jconst_merged_upsample_sse2) PRIVATE
510 510
511 EXTN(jconst_merged_upsample_sse2): 511 EXTN(jconst_merged_upsample_sse2):
512 512
513 Index: simd/jdmrgmmx.asm 513 Index: simd/jdmrgmmx.asm
514 =================================================================== 514 ===================================================================
515 --- simd/jdmrgmmx.asm» (revision 722) 515 --- simd/jdmrgmmx.asm» (revision 733)
516 +++ simd/jdmrgmmx.asm (working copy) 516 +++ simd/jdmrgmmx.asm (working copy)
517 @@ -40,7 +40,7 @@ 517 @@ -40,7 +40,7 @@
518 %define gotptr wk(0)-SIZEOF_POINTER ; void * gotptr 518 %define gotptr wk(0)-SIZEOF_POINTER ; void * gotptr
519 519
520 align 16 520 align 16
521 - global EXTN(jsimd_h2v1_merged_upsample_mmx) 521 - global EXTN(jsimd_h2v1_merged_upsample_mmx)
522 + global EXTN(jsimd_h2v1_merged_upsample_mmx) PRIVATE 522 + global EXTN(jsimd_h2v1_merged_upsample_mmx) PRIVATE
523 523
524 EXTN(jsimd_h2v1_merged_upsample_mmx): 524 EXTN(jsimd_h2v1_merged_upsample_mmx):
525 push ebp 525 push ebp
526 @@ -409,7 +409,7 @@ 526 @@ -409,7 +409,7 @@
527 %define output_buf(b) (b)+20 ; JSAMPARRAY output_buf 527 %define output_buf(b) (b)+20 ; JSAMPARRAY output_buf
528 528
529 align 16 529 align 16
530 - global EXTN(jsimd_h2v2_merged_upsample_mmx) 530 - global EXTN(jsimd_h2v2_merged_upsample_mmx)
531 + global EXTN(jsimd_h2v2_merged_upsample_mmx) PRIVATE 531 + global EXTN(jsimd_h2v2_merged_upsample_mmx) PRIVATE
532 532
533 EXTN(jsimd_h2v2_merged_upsample_mmx): 533 EXTN(jsimd_h2v2_merged_upsample_mmx):
534 push ebp 534 push ebp
535 Index: simd/jdsamss2.asm 535 Index: simd/jdsamss2.asm
536 =================================================================== 536 ===================================================================
537 --- simd/jdsamss2.asm» (revision 722) 537 --- simd/jdsamss2.asm» (revision 733)
538 +++ simd/jdsamss2.asm (working copy) 538 +++ simd/jdsamss2.asm (working copy)
539 @@ -22,7 +22,7 @@ 539 @@ -22,7 +22,7 @@
540 SECTION SEG_CONST 540 SECTION SEG_CONST
541 541
542 alignz 16 542 alignz 16
543 - global EXTN(jconst_fancy_upsample_sse2) 543 - global EXTN(jconst_fancy_upsample_sse2)
544 + global EXTN(jconst_fancy_upsample_sse2) PRIVATE 544 + global EXTN(jconst_fancy_upsample_sse2) PRIVATE
545 545
546 EXTN(jconst_fancy_upsample_sse2): 546 EXTN(jconst_fancy_upsample_sse2):
547 547
(...skipping 28 matching lines...) Expand all
576 %define output_data_ptr(b) (b)+20 ; JSAMPARRAY * output_data_ptr 576 %define output_data_ptr(b) (b)+20 ; JSAMPARRAY * output_data_ptr
577 577
578 align 16 578 align 16
579 - global EXTN(jsimd_h2v2_upsample_sse2) 579 - global EXTN(jsimd_h2v2_upsample_sse2)
580 + global EXTN(jsimd_h2v2_upsample_sse2) PRIVATE 580 + global EXTN(jsimd_h2v2_upsample_sse2) PRIVATE
581 581
582 EXTN(jsimd_h2v2_upsample_sse2): 582 EXTN(jsimd_h2v2_upsample_sse2):
583 push ebp 583 push ebp
584 Index: simd/jiss2flt-64.asm 584 Index: simd/jiss2flt-64.asm
585 =================================================================== 585 ===================================================================
586 --- simd/jiss2flt-64.asm» (revision 722) 586 --- simd/jiss2flt-64.asm» (revision 733)
587 +++ simd/jiss2flt-64.asm (working copy) 587 +++ simd/jiss2flt-64.asm (working copy)
588 @@ -38,7 +38,7 @@ 588 @@ -38,7 +38,7 @@
589 SECTION SEG_CONST 589 SECTION SEG_CONST
590 590
591 alignz 16 591 alignz 16
592 - global EXTN(jconst_idct_float_sse2) 592 - global EXTN(jconst_idct_float_sse2)
593 + global EXTN(jconst_idct_float_sse2) PRIVATE 593 + global EXTN(jconst_idct_float_sse2) PRIVATE
594 594
595 EXTN(jconst_idct_float_sse2): 595 EXTN(jconst_idct_float_sse2):
596 596
597 @@ -74,7 +74,7 @@ 597 @@ -74,7 +74,7 @@
598 ; FAST_FLOAT workspace[DCTSIZE2] 598 ; FAST_FLOAT workspace[DCTSIZE2]
599 599
600 align 16 600 align 16
601 - global EXTN(jsimd_idct_float_sse2) 601 - global EXTN(jsimd_idct_float_sse2)
602 + global EXTN(jsimd_idct_float_sse2) PRIVATE 602 + global EXTN(jsimd_idct_float_sse2) PRIVATE
603 603
604 EXTN(jsimd_idct_float_sse2): 604 EXTN(jsimd_idct_float_sse2):
605 push rbp 605 push rbp
606 Index: simd/jfss2int-64.asm 606 Index: simd/jfss2int-64.asm
607 =================================================================== 607 ===================================================================
608 --- simd/jfss2int-64.asm» (revision 722) 608 --- simd/jfss2int-64.asm» (revision 733)
609 +++ simd/jfss2int-64.asm (working copy) 609 +++ simd/jfss2int-64.asm (working copy)
610 @@ -67,7 +67,7 @@ 610 @@ -67,7 +67,7 @@
611 SECTION SEG_CONST 611 SECTION SEG_CONST
612 612
613 alignz 16 613 alignz 16
614 - global EXTN(jconst_fdct_islow_sse2) 614 - global EXTN(jconst_fdct_islow_sse2)
615 + global EXTN(jconst_fdct_islow_sse2) PRIVATE 615 + global EXTN(jconst_fdct_islow_sse2) PRIVATE
616 616
617 EXTN(jconst_fdct_islow_sse2): 617 EXTN(jconst_fdct_islow_sse2):
618 618
619 @@ -101,7 +101,7 @@ 619 @@ -101,7 +101,7 @@
620 %define WK_NUM 6 620 %define WK_NUM 6
621 621
622 align 16 622 align 16
623 - global EXTN(jsimd_fdct_islow_sse2) 623 - global EXTN(jsimd_fdct_islow_sse2)
624 + global EXTN(jsimd_fdct_islow_sse2) PRIVATE 624 + global EXTN(jsimd_fdct_islow_sse2) PRIVATE
625 625
626 EXTN(jsimd_fdct_islow_sse2): 626 EXTN(jsimd_fdct_islow_sse2):
627 push rbp 627 push rbp
628 Index: simd/jcqnts2f.asm 628 Index: simd/jcqnts2f.asm
629 =================================================================== 629 ===================================================================
630 --- simd/jcqnts2f.asm» (revision 722) 630 --- simd/jcqnts2f.asm» (revision 733)
631 +++ simd/jcqnts2f.asm (working copy) 631 +++ simd/jcqnts2f.asm (working copy)
632 @@ -35,7 +35,7 @@ 632 @@ -35,7 +35,7 @@
633 %define workspace ebp+16 ; FAST_FLOAT * workspace 633 %define workspace ebp+16 ; FAST_FLOAT * workspace
634 634
635 align 16 635 align 16
636 - global EXTN(jsimd_convsamp_float_sse2) 636 - global EXTN(jsimd_convsamp_float_sse2)
637 + global EXTN(jsimd_convsamp_float_sse2) PRIVATE 637 + global EXTN(jsimd_convsamp_float_sse2) PRIVATE
638 638
639 EXTN(jsimd_convsamp_float_sse2): 639 EXTN(jsimd_convsamp_float_sse2):
640 push ebp 640 push ebp
641 @@ -115,7 +115,7 @@ 641 @@ -115,7 +115,7 @@
642 %define workspace ebp+16 ; FAST_FLOAT * workspace 642 %define workspace ebp+16 ; FAST_FLOAT * workspace
643 643
644 align 16 644 align 16
645 - global EXTN(jsimd_quantize_float_sse2) 645 - global EXTN(jsimd_quantize_float_sse2)
646 + global EXTN(jsimd_quantize_float_sse2) PRIVATE 646 + global EXTN(jsimd_quantize_float_sse2) PRIVATE
647 647
648 EXTN(jsimd_quantize_float_sse2): 648 EXTN(jsimd_quantize_float_sse2):
649 push ebp 649 push ebp
650 Index: simd/jdmrgss2.asm 650 Index: simd/jdmrgss2.asm
651 =================================================================== 651 ===================================================================
652 --- simd/jdmrgss2.asm» (revision 722) 652 --- simd/jdmrgss2.asm» (revision 733)
653 +++ simd/jdmrgss2.asm (working copy) 653 +++ simd/jdmrgss2.asm (working copy)
654 @@ -40,7 +40,7 @@ 654 @@ -40,7 +40,7 @@
655 %define gotptr wk(0)-SIZEOF_POINTER ; void * gotptr 655 %define gotptr wk(0)-SIZEOF_POINTER ; void * gotptr
656 656
657 align 16 657 align 16
658 - global EXTN(jsimd_h2v1_merged_upsample_sse2) 658 - global EXTN(jsimd_h2v1_merged_upsample_sse2)
659 + global EXTN(jsimd_h2v1_merged_upsample_sse2) PRIVATE 659 + global EXTN(jsimd_h2v1_merged_upsample_sse2) PRIVATE
660 660
661 EXTN(jsimd_h2v1_merged_upsample_sse2): 661 EXTN(jsimd_h2v1_merged_upsample_sse2):
662 push ebp 662 push ebp
663 @@ -307,6 +307,41 @@ 663 @@ -560,7 +560,7 @@
664 » movdqa» xmmA,xmmD
665 » sub» ecx, byte SIZEOF_XMMWORD
666 .column_st15:
667 +%ifdef STRICT_MEMORY_ACCESS
668 +» ; Store the lower 8 bytes of xmmA to the output when it has enough
669 +» ; space.
670 +» cmp» ecx, byte SIZEOF_MMWORD
671 +» jb» short .column_st7
672 +» movq» MMWORD [edi], xmmA
673 +» add» edi, byte SIZEOF_MMWORD
674 +» sub» ecx, byte SIZEOF_MMWORD
675 +» psrldq» xmmA, SIZEOF_MMWORD
676 +.column_st7:
677 +» ; Store the lower 4 bytes of xmmA to the output when it has enough
678 +» ; space.
679 +» cmp» ecx, byte SIZEOF_DWORD
680 +» jb» short .column_st3
681 +» movd» DWORD [edi], xmmA
682 +» add» edi, byte SIZEOF_DWORD
683 +» sub» ecx, byte SIZEOF_DWORD
684 +» psrldq» xmmA, SIZEOF_DWORD
685 +.column_st3:
686 +» ; Store the lower 2 bytes of eax to the output when it has enough
687 +» ; space.
688 +» movd» eax, xmmA
689 +» cmp» ecx, byte SIZEOF_WORD
690 +» jb» short .column_st1
691 +» mov» WORD [edi], ax
692 +» add» edi, byte SIZEOF_WORD
693 +» sub» ecx, byte SIZEOF_WORD
694 +» shr» eax, 16
695 +.column_st1:
696 +» ; Store the lower 1 byte of eax to the output when it has enough
697 +» ; space.
698 +» test» ecx, ecx
699 +» jz» short .endcolumn
700 +» mov» BYTE [edi], al
701 +%else
702 » mov» eax,ecx
703 » xor» ecx, byte 0x0F
704 » shl» ecx, 2
705 @@ -346,6 +381,7 @@
706 » por» xmmE,xmmC
707 .adj0:»; ----------------
708 » maskmovdqu xmmA,xmmE» » » ; movntdqu XMMWORD [edi], xmmA
709 +%endif ; STRICT_MEMORY_ACCESS ; ---------------
710
711 %else ; RGB_PIXELSIZE == 4 ; -----------
712
713 @@ -434,6 +470,22 @@
714 » movdqa» xmmA,xmmD
715 » sub» ecx, byte SIZEOF_XMMWORD/4
716 .column_st15:
717 +%ifdef STRICT_MEMORY_ACCESS
718 +» ; Store two pixels (8 bytes) of xmmA to the output when it has enough
719 +» ; space.
720 +» cmp» ecx, byte SIZEOF_XMMWORD/8
721 +» jb» short .column_st7
722 +» movq» MMWORD [edi], xmmA
723 +» add» edi, byte SIZEOF_XMMWORD/8*4
724 +» sub» ecx, byte SIZEOF_XMMWORD/8
725 +» psrldq» xmmA, SIZEOF_XMMWORD/8*4
726 +.column_st7:
727 +» ; Store one pixel (4 bytes) of xmmA to the output when it has enough
728 +» ; space.
729 +» test» ecx, ecx
730 +» jz» short .endcolumn
731 +» movd» DWORD [edi], xmmA
732 +%else
733 » cmp» ecx, byte SIZEOF_XMMWORD/16
734 » jb» short .endcolumn
735 » mov» eax,ecx
736 @@ -473,6 +525,7 @@
737 » por» xmmE,xmmG
738 .adj0:»; ----------------
739 » maskmovdqu xmmA,xmmE» » » ; movntdqu XMMWORD [edi], xmmA
740 +%endif ; STRICT_MEMORY_ACCESS ; ---------------
741
742 %endif ; RGB_PIXELSIZE ; ---------------
743
744 @@ -507,7 +560,7 @@
745 %define output_buf(b) (b)+20 ; JSAMPARRAY output_buf 664 %define output_buf(b) (b)+20 ; JSAMPARRAY output_buf
746 665
747 align 16 666 align 16
748 - global EXTN(jsimd_h2v2_merged_upsample_sse2) 667 - global EXTN(jsimd_h2v2_merged_upsample_sse2)
749 + global EXTN(jsimd_h2v2_merged_upsample_sse2) PRIVATE 668 + global EXTN(jsimd_h2v2_merged_upsample_sse2) PRIVATE
750 669
751 EXTN(jsimd_h2v2_merged_upsample_sse2): 670 EXTN(jsimd_h2v2_merged_upsample_sse2):
752 push ebp 671 push ebp
753 Index: simd/jfmmxint.asm 672 Index: simd/jfmmxint.asm
754 =================================================================== 673 ===================================================================
755 --- simd/jfmmxint.asm» (revision 722) 674 --- simd/jfmmxint.asm» (revision 733)
756 +++ simd/jfmmxint.asm (working copy) 675 +++ simd/jfmmxint.asm (working copy)
757 @@ -66,7 +66,7 @@ 676 @@ -66,7 +66,7 @@
758 SECTION SEG_CONST 677 SECTION SEG_CONST
759 678
760 alignz 16 679 alignz 16
761 - global EXTN(jconst_fdct_islow_mmx) 680 - global EXTN(jconst_fdct_islow_mmx)
762 + global EXTN(jconst_fdct_islow_mmx) PRIVATE 681 + global EXTN(jconst_fdct_islow_mmx) PRIVATE
763 682
764 EXTN(jconst_fdct_islow_mmx): 683 EXTN(jconst_fdct_islow_mmx):
765 684
766 @@ -101,7 +101,7 @@ 685 @@ -101,7 +101,7 @@
767 %define WK_NUM 2 686 %define WK_NUM 2
768 687
769 align 16 688 align 16
770 - global EXTN(jsimd_fdct_islow_mmx) 689 - global EXTN(jsimd_fdct_islow_mmx)
771 + global EXTN(jsimd_fdct_islow_mmx) PRIVATE 690 + global EXTN(jsimd_fdct_islow_mmx) PRIVATE
772 691
773 EXTN(jsimd_fdct_islow_mmx): 692 EXTN(jsimd_fdct_islow_mmx):
774 push ebp 693 push ebp
775 Index: simd/jcgryss2-64.asm 694 Index: simd/jcgryss2-64.asm
776 =================================================================== 695 ===================================================================
777 --- simd/jcgryss2-64.asm» (revision 722) 696 --- simd/jcgryss2-64.asm» (revision 733)
778 +++ simd/jcgryss2-64.asm (working copy) 697 +++ simd/jcgryss2-64.asm (working copy)
779 @@ -37,7 +37,7 @@ 698 @@ -37,7 +37,7 @@
780 699
781 align 16 700 align 16
782 701
783 - global EXTN(jsimd_rgb_gray_convert_sse2) 702 - global EXTN(jsimd_rgb_gray_convert_sse2)
784 + global EXTN(jsimd_rgb_gray_convert_sse2) PRIVATE 703 + global EXTN(jsimd_rgb_gray_convert_sse2) PRIVATE
785 704
786 EXTN(jsimd_rgb_gray_convert_sse2): 705 EXTN(jsimd_rgb_gray_convert_sse2):
787 push rbp 706 push rbp
788 Index: simd/jcqnts2i.asm 707 Index: simd/jcqnts2i.asm
789 =================================================================== 708 ===================================================================
790 --- simd/jcqnts2i.asm» (revision 722) 709 --- simd/jcqnts2i.asm» (revision 733)
791 +++ simd/jcqnts2i.asm (working copy) 710 +++ simd/jcqnts2i.asm (working copy)
792 @@ -35,7 +35,7 @@ 711 @@ -35,7 +35,7 @@
793 %define workspace ebp+16 ; DCTELEM * workspace 712 %define workspace ebp+16 ; DCTELEM * workspace
794 713
795 align 16 714 align 16
796 - global EXTN(jsimd_convsamp_sse2) 715 - global EXTN(jsimd_convsamp_sse2)
797 + global EXTN(jsimd_convsamp_sse2) PRIVATE 716 + global EXTN(jsimd_convsamp_sse2) PRIVATE
798 717
799 EXTN(jsimd_convsamp_sse2): 718 EXTN(jsimd_convsamp_sse2):
800 push ebp 719 push ebp
801 @@ -117,7 +117,7 @@ 720 @@ -117,7 +117,7 @@
802 %define workspace ebp+16 ; DCTELEM * workspace 721 %define workspace ebp+16 ; DCTELEM * workspace
803 722
804 align 16 723 align 16
805 - global EXTN(jsimd_quantize_sse2) 724 - global EXTN(jsimd_quantize_sse2)
806 + global EXTN(jsimd_quantize_sse2) PRIVATE 725 + global EXTN(jsimd_quantize_sse2) PRIVATE
807 726
808 EXTN(jsimd_quantize_sse2): 727 EXTN(jsimd_quantize_sse2):
809 push ebp 728 push ebp
810 Index: simd/jiss2fst-64.asm 729 Index: simd/jiss2fst-64.asm
811 =================================================================== 730 ===================================================================
812 --- simd/jiss2fst-64.asm» (revision 722) 731 --- simd/jiss2fst-64.asm» (revision 733)
813 +++ simd/jiss2fst-64.asm (working copy) 732 +++ simd/jiss2fst-64.asm (working copy)
814 @@ -60,7 +60,7 @@ 733 @@ -60,7 +60,7 @@
815 %define CONST_SHIFT (16 - PRE_MULTIPLY_SCALE_BITS - CONST_BITS) 734 %define CONST_SHIFT (16 - PRE_MULTIPLY_SCALE_BITS - CONST_BITS)
816 735
817 alignz 16 736 alignz 16
818 - global EXTN(jconst_idct_ifast_sse2) 737 - global EXTN(jconst_idct_ifast_sse2)
819 + global EXTN(jconst_idct_ifast_sse2) PRIVATE 738 + global EXTN(jconst_idct_ifast_sse2) PRIVATE
820 739
821 EXTN(jconst_idct_ifast_sse2): 740 EXTN(jconst_idct_ifast_sse2):
822 741
823 @@ -93,7 +93,7 @@ 742 @@ -93,7 +93,7 @@
824 %define WK_NUM 2 743 %define WK_NUM 2
825 744
826 align 16 745 align 16
827 - global EXTN(jsimd_idct_ifast_sse2) 746 - global EXTN(jsimd_idct_ifast_sse2)
828 + global EXTN(jsimd_idct_ifast_sse2) PRIVATE 747 + global EXTN(jsimd_idct_ifast_sse2) PRIVATE
829 748
830 EXTN(jsimd_idct_ifast_sse2): 749 EXTN(jsimd_idct_ifast_sse2):
831 push rbp 750 push rbp
832 Index: simd/jiss2flt.asm 751 Index: simd/jiss2flt.asm
833 =================================================================== 752 ===================================================================
834 --- simd/jiss2flt.asm» (revision 722) 753 --- simd/jiss2flt.asm» (revision 733)
835 +++ simd/jiss2flt.asm (working copy) 754 +++ simd/jiss2flt.asm (working copy)
836 @@ -37,7 +37,7 @@ 755 @@ -37,7 +37,7 @@
837 SECTION SEG_CONST 756 SECTION SEG_CONST
838 757
839 alignz 16 758 alignz 16
840 - global EXTN(jconst_idct_float_sse2) 759 - global EXTN(jconst_idct_float_sse2)
841 + global EXTN(jconst_idct_float_sse2) PRIVATE 760 + global EXTN(jconst_idct_float_sse2) PRIVATE
842 761
843 EXTN(jconst_idct_float_sse2): 762 EXTN(jconst_idct_float_sse2):
844 763
845 @@ -73,7 +73,7 @@ 764 @@ -73,7 +73,7 @@
846 ; FAST_FLOAT workspace[DCTSIZE2] 765 ; FAST_FLOAT workspace[DCTSIZE2]
847 766
848 align 16 767 align 16
849 - global EXTN(jsimd_idct_float_sse2) 768 - global EXTN(jsimd_idct_float_sse2)
850 + global EXTN(jsimd_idct_float_sse2) PRIVATE 769 + global EXTN(jsimd_idct_float_sse2) PRIVATE
851 770
852 EXTN(jsimd_idct_float_sse2): 771 EXTN(jsimd_idct_float_sse2):
853 push ebp 772 push ebp
854 Index: simd/jiss2int.asm 773 Index: simd/jiss2int.asm
855 =================================================================== 774 ===================================================================
856 --- simd/jiss2int.asm» (revision 722) 775 --- simd/jiss2int.asm» (revision 733)
857 +++ simd/jiss2int.asm (working copy) 776 +++ simd/jiss2int.asm (working copy)
858 @@ -66,7 +66,7 @@ 777 @@ -66,7 +66,7 @@
859 SECTION SEG_CONST 778 SECTION SEG_CONST
860 779
861 alignz 16 780 alignz 16
862 - global EXTN(jconst_idct_islow_sse2) 781 - global EXTN(jconst_idct_islow_sse2)
863 + global EXTN(jconst_idct_islow_sse2) PRIVATE 782 + global EXTN(jconst_idct_islow_sse2) PRIVATE
864 783
865 EXTN(jconst_idct_islow_sse2): 784 EXTN(jconst_idct_islow_sse2):
866 785
867 @@ -105,7 +105,7 @@ 786 @@ -105,7 +105,7 @@
868 %define WK_NUM 12 787 %define WK_NUM 12
869 788
870 align 16 789 align 16
871 - global EXTN(jsimd_idct_islow_sse2) 790 - global EXTN(jsimd_idct_islow_sse2)
872 + global EXTN(jsimd_idct_islow_sse2) PRIVATE 791 + global EXTN(jsimd_idct_islow_sse2) PRIVATE
873 792
874 EXTN(jsimd_idct_islow_sse2): 793 EXTN(jsimd_idct_islow_sse2):
875 push ebp 794 push ebp
876 Index: simd/jfsseflt-64.asm 795 Index: simd/jfsseflt-64.asm
877 =================================================================== 796 ===================================================================
878 --- simd/jfsseflt-64.asm» (revision 722) 797 --- simd/jfsseflt-64.asm» (revision 733)
879 +++ simd/jfsseflt-64.asm (working copy) 798 +++ simd/jfsseflt-64.asm (working copy)
880 @@ -38,7 +38,7 @@ 799 @@ -38,7 +38,7 @@
881 SECTION SEG_CONST 800 SECTION SEG_CONST
882 801
883 alignz 16 802 alignz 16
884 - global EXTN(jconst_fdct_float_sse) 803 - global EXTN(jconst_fdct_float_sse)
885 + global EXTN(jconst_fdct_float_sse) PRIVATE 804 + global EXTN(jconst_fdct_float_sse) PRIVATE
886 805
887 EXTN(jconst_fdct_float_sse): 806 EXTN(jconst_fdct_float_sse):
888 807
889 @@ -65,7 +65,7 @@ 808 @@ -65,7 +65,7 @@
890 %define WK_NUM 2 809 %define WK_NUM 2
891 810
892 align 16 811 align 16
893 - global EXTN(jsimd_fdct_float_sse) 812 - global EXTN(jsimd_fdct_float_sse)
894 + global EXTN(jsimd_fdct_float_sse) PRIVATE 813 + global EXTN(jsimd_fdct_float_sse) PRIVATE
895 814
896 EXTN(jsimd_fdct_float_sse): 815 EXTN(jsimd_fdct_float_sse):
897 push rbp 816 push rbp
898 Index: simd/jccolss2-64.asm 817 Index: simd/jccolss2-64.asm
899 =================================================================== 818 ===================================================================
900 --- simd/jccolss2-64.asm» (revision 722) 819 --- simd/jccolss2-64.asm» (revision 733)
901 +++ simd/jccolss2-64.asm (working copy) 820 +++ simd/jccolss2-64.asm (working copy)
902 @@ -34,7 +34,7 @@ 821 @@ -34,7 +34,7 @@
903 SECTION SEG_CONST 822 SECTION SEG_CONST
904 823
905 alignz 16 824 alignz 16
906 - global EXTN(jconst_rgb_ycc_convert_sse2) 825 - global EXTN(jconst_rgb_ycc_convert_sse2)
907 + global EXTN(jconst_rgb_ycc_convert_sse2) PRIVATE 826 + global EXTN(jconst_rgb_ycc_convert_sse2) PRIVATE
908 827
909 EXTN(jconst_rgb_ycc_convert_sse2): 828 EXTN(jconst_rgb_ycc_convert_sse2):
910 829
911 Index: simd/jcsamss2-64.asm 830 Index: simd/jcsamss2-64.asm
912 =================================================================== 831 ===================================================================
913 --- simd/jcsamss2-64.asm» (revision 722) 832 --- simd/jcsamss2-64.asm» (revision 733)
914 +++ simd/jcsamss2-64.asm (working copy) 833 +++ simd/jcsamss2-64.asm (working copy)
915 @@ -41,7 +41,7 @@ 834 @@ -41,7 +41,7 @@
916 ; r15 = JSAMPARRAY output_data 835 ; r15 = JSAMPARRAY output_data
917 836
918 align 16 837 align 16
919 - global EXTN(jsimd_h2v1_downsample_sse2) 838 - global EXTN(jsimd_h2v1_downsample_sse2)
920 + global EXTN(jsimd_h2v1_downsample_sse2) PRIVATE 839 + global EXTN(jsimd_h2v1_downsample_sse2) PRIVATE
921 840
922 EXTN(jsimd_h2v1_downsample_sse2): 841 EXTN(jsimd_h2v1_downsample_sse2):
923 push rbp 842 push rbp
924 @@ -185,7 +185,7 @@ 843 @@ -185,7 +185,7 @@
925 ; r15 = JSAMPARRAY output_data 844 ; r15 = JSAMPARRAY output_data
926 845
927 align 16 846 align 16
928 - global EXTN(jsimd_h2v2_downsample_sse2) 847 - global EXTN(jsimd_h2v2_downsample_sse2)
929 + global EXTN(jsimd_h2v2_downsample_sse2) PRIVATE 848 + global EXTN(jsimd_h2v2_downsample_sse2) PRIVATE
930 849
931 EXTN(jsimd_h2v2_downsample_sse2): 850 EXTN(jsimd_h2v2_downsample_sse2):
932 push rbp 851 push rbp
933 Index: simd/jdclrss2-64.asm 852 Index: simd/jdclrss2-64.asm
934 =================================================================== 853 ===================================================================
935 --- simd/jdclrss2-64.asm» (revision 722) 854 --- simd/jdclrss2-64.asm» (revision 733)
936 +++ simd/jdclrss2-64.asm (working copy) 855 +++ simd/jdclrss2-64.asm (working copy)
937 @@ -39,7 +39,7 @@ 856 @@ -39,7 +39,7 @@
938 %define WK_NUM 2 857 %define WK_NUM 2
939 858
940 align 16 859 align 16
941 - global EXTN(jsimd_ycc_rgb_convert_sse2) 860 - global EXTN(jsimd_ycc_rgb_convert_sse2)
942 + global EXTN(jsimd_ycc_rgb_convert_sse2) PRIVATE 861 + global EXTN(jsimd_ycc_rgb_convert_sse2) PRIVATE
943 862
944 EXTN(jsimd_ycc_rgb_convert_sse2): 863 EXTN(jsimd_ycc_rgb_convert_sse2):
945 push rbp 864 push rbp
946 @@ -290,6 +290,41 @@
947 movdqa xmmA,xmmD
948 sub rcx, byte SIZEOF_XMMWORD
949 .column_st15:
950 +%ifdef STRICT_MEMORY_ACCESS
951 + ; Store the lower 8 bytes of xmmA to the output when it has enough
952 + ; space.
953 + cmp rcx, byte SIZEOF_MMWORD
954 + jb short .column_st7
955 + movq MMWORD [rdi], xmmA
956 + add rdi, byte SIZEOF_MMWORD
957 + sub rcx, byte SIZEOF_MMWORD
958 + psrldq xmmA, SIZEOF_MMWORD
959 +.column_st7:
960 + ; Store the lower 4 bytes of xmmA to the output when it has enough
961 + ; space.
962 + cmp rcx, byte SIZEOF_DWORD
963 + jb short .column_st3
964 + movd DWORD [rdi], xmmA
965 + add rdi, byte SIZEOF_DWORD
966 + sub rcx, byte SIZEOF_DWORD
967 + psrldq xmmA, SIZEOF_DWORD
968 +.column_st3:
969 + ; Store the lower 2 bytes of rax to the output when it has enough
970 + ; space.
971 + movd rax, xmmA
972 + cmp rcx, byte SIZEOF_WORD
973 + jb short .column_st1
974 + mov WORD [rdi], ax
975 + add rdi, byte SIZEOF_WORD
976 + sub rcx, byte SIZEOF_WORD
977 + shr rax, 16
978 +.column_st1:
979 + ; Store the lower 1 byte of rax to the output when it has enough
980 + ; space.
981 + test rcx, rcx
982 + jz short .nextrow
983 + mov BYTE [rdi], al
984 +%else
985 mov rax,rcx
986 xor rcx, byte 0x0F
987 shl rcx, 2
988 @@ -329,6 +364,7 @@
989 por xmmE,xmmC
990 .adj0: ; ----------------
991 maskmovdqu xmmA,xmmE ; movntdqu XMMWORD [rdi], xmmA
992 +%endif ; STRICT_MEMORY_ACCESS ; ---------------
993
994 %else ; RGB_PIXELSIZE == 4 ; -----------
995
996 @@ -413,6 +449,22 @@
997 movdqa xmmA,xmmD
998 sub rcx, byte SIZEOF_XMMWORD/4
999 .column_st15:
1000 +%ifdef STRICT_MEMORY_ACCESS
1001 + ; Store two pixels (8 bytes) of xmmA to the output when it has enough
1002 + ; space.
1003 + cmp rcx, byte SIZEOF_XMMWORD/8
1004 + jb short .column_st7
1005 + movq MMWORD [rdi], xmmA
1006 + add rdi, byte SIZEOF_XMMWORD/8*4
1007 + sub rcx, byte SIZEOF_XMMWORD/8
1008 + psrldq xmmA, SIZEOF_XMMWORD/8*4
1009 +.column_st7:
1010 + ; Store one pixel (4 bytes) of xmmA to the output when it has enough
1011 + ; space.
1012 + test rcx, rcx
1013 + jz short .nextrow
1014 + movd DWORD [rdi], xmmA
1015 +%else
1016 cmp rcx, byte SIZEOF_XMMWORD/16
1017 jb near .nextrow
1018 mov rax,rcx
1019 @@ -452,6 +504,7 @@
1020 por xmmE,xmmG
1021 .adj0: ; ----------------
1022 maskmovdqu xmmA,xmmE ; movntdqu XMMWORD [rdi], xmmA
1023 +%endif ; STRICT_MEMORY_ACCESS ; ---------------
1024
1025 %endif ; RGB_PIXELSIZE ; ---------------
1026
1027 Index: simd/jdcolmmx.asm 865 Index: simd/jdcolmmx.asm
1028 =================================================================== 866 ===================================================================
1029 --- simd/jdcolmmx.asm» (revision 722) 867 --- simd/jdcolmmx.asm» (revision 733)
1030 +++ simd/jdcolmmx.asm (working copy) 868 +++ simd/jdcolmmx.asm (working copy)
1031 @@ -35,7 +35,7 @@ 869 @@ -35,7 +35,7 @@
1032 SECTION SEG_CONST 870 SECTION SEG_CONST
1033 871
1034 alignz 16 872 alignz 16
1035 - global EXTN(jconst_ycc_rgb_convert_mmx) 873 - global EXTN(jconst_ycc_rgb_convert_mmx)
1036 + global EXTN(jconst_ycc_rgb_convert_mmx) PRIVATE 874 + global EXTN(jconst_ycc_rgb_convert_mmx) PRIVATE
1037 875
1038 EXTN(jconst_ycc_rgb_convert_mmx): 876 EXTN(jconst_ycc_rgb_convert_mmx):
1039 877
1040 Index: simd/jcclrmmx.asm 878 Index: simd/jcclrmmx.asm
1041 =================================================================== 879 ===================================================================
1042 --- simd/jcclrmmx.asm» (revision 722) 880 --- simd/jcclrmmx.asm» (revision 733)
1043 +++ simd/jcclrmmx.asm (working copy) 881 +++ simd/jcclrmmx.asm (working copy)
1044 @@ -40,7 +40,7 @@ 882 @@ -40,7 +40,7 @@
1045 %define gotptr wk(0)-SIZEOF_POINTER ; void * gotptr 883 %define gotptr wk(0)-SIZEOF_POINTER ; void * gotptr
1046 884
1047 align 16 885 align 16
1048 - global EXTN(jsimd_rgb_ycc_convert_mmx) 886 - global EXTN(jsimd_rgb_ycc_convert_mmx)
1049 + global EXTN(jsimd_rgb_ycc_convert_mmx) PRIVATE 887 + global EXTN(jsimd_rgb_ycc_convert_mmx) PRIVATE
1050 888
1051 EXTN(jsimd_rgb_ycc_convert_mmx): 889 EXTN(jsimd_rgb_ycc_convert_mmx):
1052 push ebp 890 push ebp
1053 Index: simd/jfsseflt.asm 891 Index: simd/jfsseflt.asm
1054 =================================================================== 892 ===================================================================
1055 --- simd/jfsseflt.asm» (revision 722) 893 --- simd/jfsseflt.asm» (revision 733)
1056 +++ simd/jfsseflt.asm (working copy) 894 +++ simd/jfsseflt.asm (working copy)
1057 @@ -37,7 +37,7 @@ 895 @@ -37,7 +37,7 @@
1058 SECTION SEG_CONST 896 SECTION SEG_CONST
1059 897
1060 alignz 16 898 alignz 16
1061 - global EXTN(jconst_fdct_float_sse) 899 - global EXTN(jconst_fdct_float_sse)
1062 + global EXTN(jconst_fdct_float_sse) PRIVATE 900 + global EXTN(jconst_fdct_float_sse) PRIVATE
1063 901
1064 EXTN(jconst_fdct_float_sse): 902 EXTN(jconst_fdct_float_sse):
1065 903
1066 @@ -65,7 +65,7 @@ 904 @@ -65,7 +65,7 @@
1067 %define WK_NUM 2 905 %define WK_NUM 2
1068 906
1069 align 16 907 align 16
1070 - global EXTN(jsimd_fdct_float_sse) 908 - global EXTN(jsimd_fdct_float_sse)
1071 + global EXTN(jsimd_fdct_float_sse) PRIVATE 909 + global EXTN(jsimd_fdct_float_sse) PRIVATE
1072 910
1073 EXTN(jsimd_fdct_float_sse): 911 EXTN(jsimd_fdct_float_sse):
1074 push ebp 912 push ebp
1075 Index: simd/jdmrgss2-64.asm 913 Index: simd/jdmrgss2-64.asm
1076 =================================================================== 914 ===================================================================
1077 --- simd/jdmrgss2-64.asm» (revision 722) 915 --- simd/jdmrgss2-64.asm» (revision 733)
1078 +++ simd/jdmrgss2-64.asm (working copy) 916 +++ simd/jdmrgss2-64.asm (working copy)
1079 @@ -39,7 +39,7 @@ 917 @@ -39,7 +39,7 @@
1080 %define WK_NUM 3 918 %define WK_NUM 3
1081 919
1082 align 16 920 align 16
1083 - global EXTN(jsimd_h2v1_merged_upsample_sse2) 921 - global EXTN(jsimd_h2v1_merged_upsample_sse2)
1084 + global EXTN(jsimd_h2v1_merged_upsample_sse2) PRIVATE 922 + global EXTN(jsimd_h2v1_merged_upsample_sse2) PRIVATE
1085 923
1086 EXTN(jsimd_h2v1_merged_upsample_sse2): 924 EXTN(jsimd_h2v1_merged_upsample_sse2):
1087 push rbp 925 push rbp
1088 @@ -294,6 +294,41 @@ 926 @@ -543,7 +543,7 @@
1089 » movdqa» xmmA,xmmD
1090 » sub» rcx, byte SIZEOF_XMMWORD
1091 .column_st15:
1092 +%ifdef STRICT_MEMORY_ACCESS
1093 +» ; Store the lower 8 bytes of xmmA to the output when it has enough
1094 +» ; space.
1095 +» cmp» rcx, byte SIZEOF_MMWORD
1096 +» jb» short .column_st7
1097 +» movq» MMWORD [rdi], xmmA
1098 +» add» rdi, byte SIZEOF_MMWORD
1099 +» sub» rcx, byte SIZEOF_MMWORD
1100 +» psrldq» xmmA, SIZEOF_MMWORD
1101 +.column_st7:
1102 +» ; Store the lower 4 bytes of xmmA to the output when it has enough
1103 +» ; space.
1104 +» cmp» rcx, byte SIZEOF_DWORD
1105 +» jb» short .column_st3
1106 +» movd» DWORD [rdi], xmmA
1107 +» add» rdi, byte SIZEOF_DWORD
1108 +» sub» rcx, byte SIZEOF_DWORD
1109 +» psrldq» xmmA, SIZEOF_DWORD
1110 +.column_st3:
1111 +» ; Store the lower 2 bytes of rax to the output when it has enough
1112 +» ; space.
1113 +» movd» rax, xmmA
1114 +» cmp» rcx, byte SIZEOF_WORD
1115 +» jb» short .column_st1
1116 +» mov» WORD [rdi], ax
1117 +» add» rdi, byte SIZEOF_WORD
1118 +» sub» rcx, byte SIZEOF_WORD
1119 +» shr» rax, 16
1120 +.column_st1:
1121 +» ; Store the lower 1 byte of rax to the output when it has enough
1122 +» ; space.
1123 +» test» rcx, rcx
1124 +» jz» short .endcolumn
1125 +» mov» BYTE [rdi], al
1126 +%else
1127 » mov» rax,rcx
1128 » xor» rcx, byte 0x0F
1129 » shl» rcx, 2
1130 @@ -333,6 +368,7 @@
1131 » por» xmmE,xmmC
1132 .adj0:»; ----------------
1133 » maskmovdqu xmmA,xmmE» » » ; movntdqu XMMWORD [edi], xmmA
1134 +%endif ; STRICT_MEMORY_ACCESS ; ---------------
1135
1136 %else ; RGB_PIXELSIZE == 4 ; -----------
1137
1138 @@ -420,6 +456,22 @@
1139 » movdqa» xmmA,xmmD
1140 » sub» rcx, byte SIZEOF_XMMWORD/4
1141 .column_st15:
1142 +%ifdef STRICT_MEMORY_ACCESS
1143 +» ; Store two pixels (8 bytes) of xmmA to the output when it has enough
1144 +» ; space.
1145 +» cmp» rcx, byte SIZEOF_XMMWORD/8
1146 +» jb» short .column_st7
1147 +» movq» MMWORD [rdi], xmmA
1148 +» add» rdi, byte SIZEOF_XMMWORD/8*4
1149 +» sub» rcx, byte SIZEOF_XMMWORD/8
1150 +» psrldq» xmmA, SIZEOF_XMMWORD/8*4
1151 +.column_st7:
1152 +» ; Store one pixel (4 bytes) of xmmA to the output when it has enough
1153 +» ; space.
1154 +» test» rcx, rcx
1155 +» jz» short .endcolumn
1156 +» movd» DWORD [rdi], xmmA
1157 +%else
1158 » cmp» rcx, byte SIZEOF_XMMWORD/16
1159 » jb» near .endcolumn
1160 » mov» rax,rcx
1161 @@ -459,6 +511,7 @@
1162 » por» xmmE,xmmG
1163 .adj0:»; ----------------
1164 » maskmovdqu xmmA,xmmE» » » ; movntdqu XMMWORD [edi], xmmA
1165 +%endif ; STRICT_MEMORY_ACCESS ; ---------------
1166
1167 %endif ; RGB_PIXELSIZE ; ---------------
1168
1169 @@ -490,7 +543,7 @@
1170 ; r13 = JSAMPARRAY output_buf 927 ; r13 = JSAMPARRAY output_buf
1171 928
1172 align 16 929 align 16
1173 - global EXTN(jsimd_h2v2_merged_upsample_sse2) 930 - global EXTN(jsimd_h2v2_merged_upsample_sse2)
1174 + global EXTN(jsimd_h2v2_merged_upsample_sse2) PRIVATE 931 + global EXTN(jsimd_h2v2_merged_upsample_sse2) PRIVATE
1175 932
1176 EXTN(jsimd_h2v2_merged_upsample_sse2): 933 EXTN(jsimd_h2v2_merged_upsample_sse2):
1177 push rbp 934 push rbp
1178 Index: simd/jdmermmx.asm 935 Index: simd/jdmermmx.asm
1179 =================================================================== 936 ===================================================================
1180 --- simd/jdmermmx.asm» (revision 722) 937 --- simd/jdmermmx.asm» (revision 733)
1181 +++ simd/jdmermmx.asm (working copy) 938 +++ simd/jdmermmx.asm (working copy)
1182 @@ -35,7 +35,7 @@ 939 @@ -35,7 +35,7 @@
1183 SECTION SEG_CONST 940 SECTION SEG_CONST
1184 941
1185 alignz 16 942 alignz 16
1186 - global EXTN(jconst_merged_upsample_mmx) 943 - global EXTN(jconst_merged_upsample_mmx)
1187 + global EXTN(jconst_merged_upsample_mmx) PRIVATE 944 + global EXTN(jconst_merged_upsample_mmx) PRIVATE
1188 945
1189 EXTN(jconst_merged_upsample_mmx): 946 EXTN(jconst_merged_upsample_mmx):
1190 947
1191 Index: simd/jdcolss2.asm 948 Index: simd/jdcolss2.asm
1192 =================================================================== 949 ===================================================================
1193 --- simd/jdcolss2.asm» (revision 722) 950 --- simd/jdcolss2.asm» (revision 733)
1194 +++ simd/jdcolss2.asm (working copy) 951 +++ simd/jdcolss2.asm (working copy)
1195 @@ -35,7 +35,7 @@ 952 @@ -35,7 +35,7 @@
1196 SECTION SEG_CONST 953 SECTION SEG_CONST
1197 954
1198 alignz 16 955 alignz 16
1199 - global EXTN(jconst_ycc_rgb_convert_sse2) 956 - global EXTN(jconst_ycc_rgb_convert_sse2)
1200 + global EXTN(jconst_ycc_rgb_convert_sse2) PRIVATE 957 + global EXTN(jconst_ycc_rgb_convert_sse2) PRIVATE
1201 958
1202 EXTN(jconst_ycc_rgb_convert_sse2): 959 EXTN(jconst_ycc_rgb_convert_sse2):
1203 960
1204 Index: simd/jiss2red.asm 961 Index: simd/jiss2red.asm
1205 =================================================================== 962 ===================================================================
1206 --- simd/jiss2red.asm» (revision 722) 963 --- simd/jiss2red.asm» (revision 733)
1207 +++ simd/jiss2red.asm (working copy) 964 +++ simd/jiss2red.asm (working copy)
1208 @@ -72,7 +72,7 @@ 965 @@ -72,7 +72,7 @@
1209 SECTION SEG_CONST 966 SECTION SEG_CONST
1210 967
1211 alignz 16 968 alignz 16
1212 - global EXTN(jconst_idct_red_sse2) 969 - global EXTN(jconst_idct_red_sse2)
1213 + global EXTN(jconst_idct_red_sse2) PRIVATE 970 + global EXTN(jconst_idct_red_sse2) PRIVATE
1214 971
1215 EXTN(jconst_idct_red_sse2): 972 EXTN(jconst_idct_red_sse2):
1216 973
(...skipping 10 matching lines...) Expand all
1227 %define output_col(b) (b)+20 ; JDIMENSION output_col 984 %define output_col(b) (b)+20 ; JDIMENSION output_col
1228 985
1229 align 16 986 align 16
1230 - global EXTN(jsimd_idct_2x2_sse2) 987 - global EXTN(jsimd_idct_2x2_sse2)
1231 + global EXTN(jsimd_idct_2x2_sse2) PRIVATE 988 + global EXTN(jsimd_idct_2x2_sse2) PRIVATE
1232 989
1233 EXTN(jsimd_idct_2x2_sse2): 990 EXTN(jsimd_idct_2x2_sse2):
1234 push ebp 991 push ebp
1235 Index: simd/jcclrss2.asm 992 Index: simd/jcclrss2.asm
1236 =================================================================== 993 ===================================================================
1237 --- simd/jcclrss2.asm» (revision 722) 994 --- simd/jcclrss2.asm» (revision 733)
1238 +++ simd/jcclrss2.asm (working copy) 995 +++ simd/jcclrss2.asm (working copy)
1239 @@ -38,7 +38,7 @@ 996 @@ -38,7 +38,7 @@
1240 997
1241 align 16 998 align 16
1242 999
1243 - global EXTN(jsimd_rgb_ycc_convert_sse2) 1000 - global EXTN(jsimd_rgb_ycc_convert_sse2)
1244 + global EXTN(jsimd_rgb_ycc_convert_sse2) PRIVATE 1001 + global EXTN(jsimd_rgb_ycc_convert_sse2) PRIVATE
1245 1002
1246 EXTN(jsimd_rgb_ycc_convert_sse2): 1003 EXTN(jsimd_rgb_ycc_convert_sse2):
1247 push ebp 1004 push ebp
1248 Index: simd/jdmerss2.asm 1005 Index: simd/jdmerss2.asm
1249 =================================================================== 1006 ===================================================================
1250 --- simd/jdmerss2.asm» (revision 722) 1007 --- simd/jdmerss2.asm» (revision 733)
1251 +++ simd/jdmerss2.asm (working copy) 1008 +++ simd/jdmerss2.asm (working copy)
1252 @@ -35,7 +35,7 @@ 1009 @@ -35,7 +35,7 @@
1253 SECTION SEG_CONST 1010 SECTION SEG_CONST
1254 1011
1255 alignz 16 1012 alignz 16
1256 - global EXTN(jconst_merged_upsample_sse2) 1013 - global EXTN(jconst_merged_upsample_sse2)
1257 + global EXTN(jconst_merged_upsample_sse2) PRIVATE 1014 + global EXTN(jconst_merged_upsample_sse2) PRIVATE
1258 1015
1259 EXTN(jconst_merged_upsample_sse2): 1016 EXTN(jconst_merged_upsample_sse2):
1260 1017
1261 Index: simd/jfss2fst-64.asm 1018 Index: simd/jfss2fst-64.asm
1262 =================================================================== 1019 ===================================================================
1263 --- simd/jfss2fst-64.asm» (revision 722) 1020 --- simd/jfss2fst-64.asm» (revision 733)
1264 +++ simd/jfss2fst-64.asm (working copy) 1021 +++ simd/jfss2fst-64.asm (working copy)
1265 @@ -53,7 +53,7 @@ 1022 @@ -53,7 +53,7 @@
1266 %define CONST_SHIFT (16 - PRE_MULTIPLY_SCALE_BITS - CONST_BITS) 1023 %define CONST_SHIFT (16 - PRE_MULTIPLY_SCALE_BITS - CONST_BITS)
1267 1024
1268 alignz 16 1025 alignz 16
1269 - global EXTN(jconst_fdct_ifast_sse2) 1026 - global EXTN(jconst_fdct_ifast_sse2)
1270 + global EXTN(jconst_fdct_ifast_sse2) PRIVATE 1027 + global EXTN(jconst_fdct_ifast_sse2) PRIVATE
1271 1028
1272 EXTN(jconst_fdct_ifast_sse2): 1029 EXTN(jconst_fdct_ifast_sse2):
1273 1030
1274 @@ -80,7 +80,7 @@ 1031 @@ -80,7 +80,7 @@
1275 %define WK_NUM 2 1032 %define WK_NUM 2
1276 1033
1277 align 16 1034 align 16
1278 - global EXTN(jsimd_fdct_ifast_sse2) 1035 - global EXTN(jsimd_fdct_ifast_sse2)
1279 + global EXTN(jsimd_fdct_ifast_sse2) PRIVATE 1036 + global EXTN(jsimd_fdct_ifast_sse2) PRIVATE
1280 1037
1281 EXTN(jsimd_fdct_ifast_sse2): 1038 EXTN(jsimd_fdct_ifast_sse2):
1282 push rbp 1039 push rbp
1283 Index: simd/jimmxfst.asm 1040 Index: simd/jimmxfst.asm
1284 =================================================================== 1041 ===================================================================
1285 --- simd/jimmxfst.asm» (revision 722) 1042 --- simd/jimmxfst.asm» (revision 733)
1286 +++ simd/jimmxfst.asm (working copy) 1043 +++ simd/jimmxfst.asm (working copy)
1287 @@ -59,7 +59,7 @@ 1044 @@ -59,7 +59,7 @@
1288 %define CONST_SHIFT (16 - PRE_MULTIPLY_SCALE_BITS - CONST_BITS) 1045 %define CONST_SHIFT (16 - PRE_MULTIPLY_SCALE_BITS - CONST_BITS)
1289 1046
1290 alignz 16 1047 alignz 16
1291 - global EXTN(jconst_idct_ifast_mmx) 1048 - global EXTN(jconst_idct_ifast_mmx)
1292 + global EXTN(jconst_idct_ifast_mmx) PRIVATE 1049 + global EXTN(jconst_idct_ifast_mmx) PRIVATE
1293 1050
1294 EXTN(jconst_idct_ifast_mmx): 1051 EXTN(jconst_idct_ifast_mmx):
1295 1052
1296 @@ -94,7 +94,7 @@ 1053 @@ -94,7 +94,7 @@
1297 ; JCOEF workspace[DCTSIZE2] 1054 ; JCOEF workspace[DCTSIZE2]
1298 1055
1299 align 16 1056 align 16
1300 - global EXTN(jsimd_idct_ifast_mmx) 1057 - global EXTN(jsimd_idct_ifast_mmx)
1301 + global EXTN(jsimd_idct_ifast_mmx) PRIVATE 1058 + global EXTN(jsimd_idct_ifast_mmx) PRIVATE
1302 1059
1303 EXTN(jsimd_idct_ifast_mmx): 1060 EXTN(jsimd_idct_ifast_mmx):
1304 push ebp 1061 push ebp
1305 Index: simd/jcqntmmx.asm 1062 Index: simd/jcqntmmx.asm
1306 =================================================================== 1063 ===================================================================
1307 --- simd/jcqntmmx.asm» (revision 722) 1064 --- simd/jcqntmmx.asm» (revision 733)
1308 +++ simd/jcqntmmx.asm (working copy) 1065 +++ simd/jcqntmmx.asm (working copy)
1309 @@ -35,7 +35,7 @@ 1066 @@ -35,7 +35,7 @@
1310 %define workspace ebp+16 ; DCTELEM * workspace 1067 %define workspace ebp+16 ; DCTELEM * workspace
1311 1068
1312 align 16 1069 align 16
1313 - global EXTN(jsimd_convsamp_mmx) 1070 - global EXTN(jsimd_convsamp_mmx)
1314 + global EXTN(jsimd_convsamp_mmx) PRIVATE 1071 + global EXTN(jsimd_convsamp_mmx) PRIVATE
1315 1072
1316 EXTN(jsimd_convsamp_mmx): 1073 EXTN(jsimd_convsamp_mmx):
1317 push ebp 1074 push ebp
1318 @@ -140,7 +140,7 @@ 1075 @@ -140,7 +140,7 @@
1319 %define workspace ebp+16 ; DCTELEM * workspace 1076 %define workspace ebp+16 ; DCTELEM * workspace
1320 1077
1321 align 16 1078 align 16
1322 - global EXTN(jsimd_quantize_mmx) 1079 - global EXTN(jsimd_quantize_mmx)
1323 + global EXTN(jsimd_quantize_mmx) PRIVATE 1080 + global EXTN(jsimd_quantize_mmx) PRIVATE
1324 1081
1325 EXTN(jsimd_quantize_mmx): 1082 EXTN(jsimd_quantize_mmx):
1326 push ebp 1083 push ebp
1327 Index: simd/jfss2fst.asm 1084 Index: simd/jfss2fst.asm
1328 =================================================================== 1085 ===================================================================
1329 --- simd/jfss2fst.asm» (revision 722) 1086 --- simd/jfss2fst.asm» (revision 733)
1330 +++ simd/jfss2fst.asm (working copy) 1087 +++ simd/jfss2fst.asm (working copy)
1331 @@ -52,7 +52,7 @@ 1088 @@ -52,7 +52,7 @@
1332 %define CONST_SHIFT (16 - PRE_MULTIPLY_SCALE_BITS - CONST_BITS) 1089 %define CONST_SHIFT (16 - PRE_MULTIPLY_SCALE_BITS - CONST_BITS)
1333 1090
1334 alignz 16 1091 alignz 16
1335 - global EXTN(jconst_fdct_ifast_sse2) 1092 - global EXTN(jconst_fdct_ifast_sse2)
1336 + global EXTN(jconst_fdct_ifast_sse2) PRIVATE 1093 + global EXTN(jconst_fdct_ifast_sse2) PRIVATE
1337 1094
1338 EXTN(jconst_fdct_ifast_sse2): 1095 EXTN(jconst_fdct_ifast_sse2):
1339 1096
1340 @@ -80,7 +80,7 @@ 1097 @@ -80,7 +80,7 @@
1341 %define WK_NUM 2 1098 %define WK_NUM 2
1342 1099
1343 align 16 1100 align 16
1344 - global EXTN(jsimd_fdct_ifast_sse2) 1101 - global EXTN(jsimd_fdct_ifast_sse2)
1345 + global EXTN(jsimd_fdct_ifast_sse2) PRIVATE 1102 + global EXTN(jsimd_fdct_ifast_sse2) PRIVATE
1346 1103
1347 EXTN(jsimd_fdct_ifast_sse2): 1104 EXTN(jsimd_fdct_ifast_sse2):
1348 push ebp 1105 push ebp
1349 Index: simd/jcgrammx.asm 1106 Index: simd/jcgrammx.asm
1350 =================================================================== 1107 ===================================================================
1351 --- simd/jcgrammx.asm» (revision 722) 1108 --- simd/jcgrammx.asm» (revision 733)
1352 +++ simd/jcgrammx.asm (working copy) 1109 +++ simd/jcgrammx.asm (working copy)
1353 @@ -33,7 +33,7 @@ 1110 @@ -33,7 +33,7 @@
1354 SECTION SEG_CONST 1111 SECTION SEG_CONST
1355 1112
1356 alignz 16 1113 alignz 16
1357 - global EXTN(jconst_rgb_gray_convert_mmx) 1114 - global EXTN(jconst_rgb_gray_convert_mmx)
1358 + global EXTN(jconst_rgb_gray_convert_mmx) PRIVATE 1115 + global EXTN(jconst_rgb_gray_convert_mmx) PRIVATE
1359 1116
1360 EXTN(jconst_rgb_gray_convert_mmx): 1117 EXTN(jconst_rgb_gray_convert_mmx):
1361 1118
1362 Index: simd/jf3dnflt.asm 1119 Index: simd/jf3dnflt.asm
1363 =================================================================== 1120 ===================================================================
1364 --- simd/jf3dnflt.asm» (revision 722) 1121 --- simd/jf3dnflt.asm» (revision 733)
1365 +++ simd/jf3dnflt.asm (working copy) 1122 +++ simd/jf3dnflt.asm (working copy)
1366 @@ -27,7 +27,7 @@ 1123 @@ -27,7 +27,7 @@
1367 SECTION SEG_CONST 1124 SECTION SEG_CONST
1368 1125
1369 alignz 16 1126 alignz 16
1370 - global EXTN(jconst_fdct_float_3dnow) 1127 - global EXTN(jconst_fdct_float_3dnow)
1371 + global EXTN(jconst_fdct_float_3dnow) PRIVATE 1128 + global EXTN(jconst_fdct_float_3dnow) PRIVATE
1372 1129
1373 EXTN(jconst_fdct_float_3dnow): 1130 EXTN(jconst_fdct_float_3dnow):
1374 1131
1375 @@ -55,7 +55,7 @@ 1132 @@ -55,7 +55,7 @@
1376 %define WK_NUM 2 1133 %define WK_NUM 2
1377 1134
1378 align 16 1135 align 16
1379 - global EXTN(jsimd_fdct_float_3dnow) 1136 - global EXTN(jsimd_fdct_float_3dnow)
1380 + global EXTN(jsimd_fdct_float_3dnow) PRIVATE 1137 + global EXTN(jsimd_fdct_float_3dnow) PRIVATE
1381 1138
1382 EXTN(jsimd_fdct_float_3dnow): 1139 EXTN(jsimd_fdct_float_3dnow):
1383 push ebp 1140 push ebp
1384 Index: simd/jdcolss2-64.asm 1141 Index: simd/jdcolss2-64.asm
1385 =================================================================== 1142 ===================================================================
1386 --- simd/jdcolss2-64.asm» (revision 722) 1143 --- simd/jdcolss2-64.asm» (revision 733)
1387 +++ simd/jdcolss2-64.asm (working copy) 1144 +++ simd/jdcolss2-64.asm (working copy)
1388 @@ -35,7 +35,7 @@ 1145 @@ -35,7 +35,7 @@
1389 SECTION SEG_CONST 1146 SECTION SEG_CONST
1390 1147
1391 alignz 16 1148 alignz 16
1392 - global EXTN(jconst_ycc_rgb_convert_sse2) 1149 - global EXTN(jconst_ycc_rgb_convert_sse2)
1393 + global EXTN(jconst_ycc_rgb_convert_sse2) PRIVATE 1150 + global EXTN(jconst_ycc_rgb_convert_sse2) PRIVATE
1394 1151
1395 EXTN(jconst_ycc_rgb_convert_sse2): 1152 EXTN(jconst_ycc_rgb_convert_sse2):
1396 1153
1397 Index: simd/jdsamss2-64.asm 1154 Index: simd/jdsamss2-64.asm
1398 =================================================================== 1155 ===================================================================
1399 --- simd/jdsamss2-64.asm» (revision 722) 1156 --- simd/jdsamss2-64.asm» (revision 733)
1400 +++ simd/jdsamss2-64.asm (working copy) 1157 +++ simd/jdsamss2-64.asm (working copy)
1401 @@ -23,7 +23,7 @@ 1158 @@ -23,7 +23,7 @@
1402 SECTION SEG_CONST 1159 SECTION SEG_CONST
1403 1160
1404 alignz 16 1161 alignz 16
1405 - global EXTN(jconst_fancy_upsample_sse2) 1162 - global EXTN(jconst_fancy_upsample_sse2)
1406 + global EXTN(jconst_fancy_upsample_sse2) PRIVATE 1163 + global EXTN(jconst_fancy_upsample_sse2) PRIVATE
1407 1164
1408 EXTN(jconst_fancy_upsample_sse2): 1165 EXTN(jconst_fancy_upsample_sse2):
1409 1166
(...skipping 28 matching lines...) Expand all
1438 ; r13 = JSAMPARRAY * output_data_ptr 1195 ; r13 = JSAMPARRAY * output_data_ptr
1439 1196
1440 align 16 1197 align 16
1441 - global EXTN(jsimd_h2v2_upsample_sse2) 1198 - global EXTN(jsimd_h2v2_upsample_sse2)
1442 + global EXTN(jsimd_h2v2_upsample_sse2) PRIVATE 1199 + global EXTN(jsimd_h2v2_upsample_sse2) PRIVATE
1443 1200
1444 EXTN(jsimd_h2v2_upsample_sse2): 1201 EXTN(jsimd_h2v2_upsample_sse2):
1445 push rbp 1202 push rbp
1446 Index: simd/jcgrass2.asm 1203 Index: simd/jcgrass2.asm
1447 =================================================================== 1204 ===================================================================
1448 --- simd/jcgrass2.asm» (revision 722) 1205 --- simd/jcgrass2.asm» (revision 733)
1449 +++ simd/jcgrass2.asm (working copy) 1206 +++ simd/jcgrass2.asm (working copy)
1450 @@ -30,7 +30,7 @@ 1207 @@ -30,7 +30,7 @@
1451 SECTION SEG_CONST 1208 SECTION SEG_CONST
1452 1209
1453 alignz 16 1210 alignz 16
1454 - global EXTN(jconst_rgb_gray_convert_sse2) 1211 - global EXTN(jconst_rgb_gray_convert_sse2)
1455 + global EXTN(jconst_rgb_gray_convert_sse2) PRIVATE 1212 + global EXTN(jconst_rgb_gray_convert_sse2) PRIVATE
1456 1213
1457 EXTN(jconst_rgb_gray_convert_sse2): 1214 EXTN(jconst_rgb_gray_convert_sse2):
1458 1215
1459 Index: simd/jcsammmx.asm 1216 Index: simd/jcsammmx.asm
1460 =================================================================== 1217 ===================================================================
1461 --- simd/jcsammmx.asm» (revision 722) 1218 --- simd/jcsammmx.asm» (revision 733)
1462 +++ simd/jcsammmx.asm (working copy) 1219 +++ simd/jcsammmx.asm (working copy)
1463 @@ -40,7 +40,7 @@ 1220 @@ -40,7 +40,7 @@
1464 %define output_data(b) (b)+28 ; JSAMPARRAY output_data 1221 %define output_data(b) (b)+28 ; JSAMPARRAY output_data
1465 1222
1466 align 16 1223 align 16
1467 - global EXTN(jsimd_h2v1_downsample_mmx) 1224 - global EXTN(jsimd_h2v1_downsample_mmx)
1468 + global EXTN(jsimd_h2v1_downsample_mmx) PRIVATE 1225 + global EXTN(jsimd_h2v1_downsample_mmx) PRIVATE
1469 1226
1470 EXTN(jsimd_h2v1_downsample_mmx): 1227 EXTN(jsimd_h2v1_downsample_mmx):
1471 push ebp 1228 push ebp
1472 @@ -182,7 +182,7 @@ 1229 @@ -182,7 +182,7 @@
1473 %define output_data(b) (b)+28 ; JSAMPARRAY output_data 1230 %define output_data(b) (b)+28 ; JSAMPARRAY output_data
1474 1231
1475 align 16 1232 align 16
1476 - global EXTN(jsimd_h2v2_downsample_mmx) 1233 - global EXTN(jsimd_h2v2_downsample_mmx)
1477 + global EXTN(jsimd_h2v2_downsample_mmx) PRIVATE 1234 + global EXTN(jsimd_h2v2_downsample_mmx) PRIVATE
1478 1235
1479 EXTN(jsimd_h2v2_downsample_mmx): 1236 EXTN(jsimd_h2v2_downsample_mmx):
1480 push ebp 1237 push ebp
1481 Index: simd/jcqnts2f-64.asm 1238 Index: simd/jcqnts2f-64.asm
1482 =================================================================== 1239 ===================================================================
1483 --- simd/jcqnts2f-64.asm» (revision 722) 1240 --- simd/jcqnts2f-64.asm» (revision 733)
1484 +++ simd/jcqnts2f-64.asm (working copy) 1241 +++ simd/jcqnts2f-64.asm (working copy)
1485 @@ -36,7 +36,7 @@ 1242 @@ -36,7 +36,7 @@
1486 ; r12 = FAST_FLOAT * workspace 1243 ; r12 = FAST_FLOAT * workspace
1487 1244
1488 align 16 1245 align 16
1489 - global EXTN(jsimd_convsamp_float_sse2) 1246 - global EXTN(jsimd_convsamp_float_sse2)
1490 + global EXTN(jsimd_convsamp_float_sse2) PRIVATE 1247 + global EXTN(jsimd_convsamp_float_sse2) PRIVATE
1491 1248
1492 EXTN(jsimd_convsamp_float_sse2): 1249 EXTN(jsimd_convsamp_float_sse2):
1493 push rbp 1250 push rbp
1494 @@ -110,7 +110,7 @@ 1251 @@ -110,7 +110,7 @@
1495 ; r12 = FAST_FLOAT * workspace 1252 ; r12 = FAST_FLOAT * workspace
1496 1253
1497 align 16 1254 align 16
1498 - global EXTN(jsimd_quantize_float_sse2) 1255 - global EXTN(jsimd_quantize_float_sse2)
1499 + global EXTN(jsimd_quantize_float_sse2) PRIVATE 1256 + global EXTN(jsimd_quantize_float_sse2) PRIVATE
1500 1257
1501 EXTN(jsimd_quantize_float_sse2): 1258 EXTN(jsimd_quantize_float_sse2):
1502 push rbp 1259 push rbp
1503 Index: simd/jcqnt3dn.asm 1260 Index: simd/jcqnt3dn.asm
1504 =================================================================== 1261 ===================================================================
1505 --- simd/jcqnt3dn.asm» (revision 722) 1262 --- simd/jcqnt3dn.asm» (revision 733)
1506 +++ simd/jcqnt3dn.asm (working copy) 1263 +++ simd/jcqnt3dn.asm (working copy)
1507 @@ -35,7 +35,7 @@ 1264 @@ -35,7 +35,7 @@
1508 %define workspace ebp+16 ; FAST_FLOAT * workspace 1265 %define workspace ebp+16 ; FAST_FLOAT * workspace
1509 1266
1510 align 16 1267 align 16
1511 - global EXTN(jsimd_convsamp_float_3dnow) 1268 - global EXTN(jsimd_convsamp_float_3dnow)
1512 + global EXTN(jsimd_convsamp_float_3dnow) PRIVATE 1269 + global EXTN(jsimd_convsamp_float_3dnow) PRIVATE
1513 1270
1514 EXTN(jsimd_convsamp_float_3dnow): 1271 EXTN(jsimd_convsamp_float_3dnow):
1515 push ebp 1272 push ebp
1516 @@ -138,7 +138,7 @@ 1273 @@ -138,7 +138,7 @@
1517 %define workspace ebp+16 ; FAST_FLOAT * workspace 1274 %define workspace ebp+16 ; FAST_FLOAT * workspace
1518 1275
1519 align 16 1276 align 16
1520 - global EXTN(jsimd_quantize_float_3dnow) 1277 - global EXTN(jsimd_quantize_float_3dnow)
1521 + global EXTN(jsimd_quantize_float_3dnow) PRIVATE 1278 + global EXTN(jsimd_quantize_float_3dnow) PRIVATE
1522 1279
1523 EXTN(jsimd_quantize_float_3dnow): 1280 EXTN(jsimd_quantize_float_3dnow):
1524 push ebp 1281 push ebp
1525 Index: simd/jcsamss2.asm 1282 Index: simd/jcsamss2.asm
1526 =================================================================== 1283 ===================================================================
1527 --- simd/jcsamss2.asm» (revision 722) 1284 --- simd/jcsamss2.asm» (revision 733)
1528 +++ simd/jcsamss2.asm (working copy) 1285 +++ simd/jcsamss2.asm (working copy)
1529 @@ -40,7 +40,7 @@ 1286 @@ -40,7 +40,7 @@
1530 %define output_data(b) (b)+28 ; JSAMPARRAY output_data 1287 %define output_data(b) (b)+28 ; JSAMPARRAY output_data
1531 1288
1532 align 16 1289 align 16
1533 - global EXTN(jsimd_h2v1_downsample_sse2) 1290 - global EXTN(jsimd_h2v1_downsample_sse2)
1534 + global EXTN(jsimd_h2v1_downsample_sse2) PRIVATE 1291 + global EXTN(jsimd_h2v1_downsample_sse2) PRIVATE
1535 1292
1536 EXTN(jsimd_h2v1_downsample_sse2): 1293 EXTN(jsimd_h2v1_downsample_sse2):
1537 push ebp 1294 push ebp
1538 @@ -195,7 +195,7 @@ 1295 @@ -195,7 +195,7 @@
1539 %define output_data(b) (b)+28 ; JSAMPARRAY output_data 1296 %define output_data(b) (b)+28 ; JSAMPARRAY output_data
1540 1297
1541 align 16 1298 align 16
1542 - global EXTN(jsimd_h2v2_downsample_sse2) 1299 - global EXTN(jsimd_h2v2_downsample_sse2)
1543 + global EXTN(jsimd_h2v2_downsample_sse2) PRIVATE 1300 + global EXTN(jsimd_h2v2_downsample_sse2) PRIVATE
1544 1301
1545 EXTN(jsimd_h2v2_downsample_sse2): 1302 EXTN(jsimd_h2v2_downsample_sse2):
1546 push ebp 1303 push ebp
1547 Index: simd/jimmxint.asm 1304 Index: simd/jimmxint.asm
1548 =================================================================== 1305 ===================================================================
1549 --- simd/jimmxint.asm» (revision 722) 1306 --- simd/jimmxint.asm» (revision 733)
1550 +++ simd/jimmxint.asm (working copy) 1307 +++ simd/jimmxint.asm (working copy)
1551 @@ -66,7 +66,7 @@ 1308 @@ -66,7 +66,7 @@
1552 SECTION SEG_CONST 1309 SECTION SEG_CONST
1553 1310
1554 alignz 16 1311 alignz 16
1555 - global EXTN(jconst_idct_islow_mmx) 1312 - global EXTN(jconst_idct_islow_mmx)
1556 + global EXTN(jconst_idct_islow_mmx) PRIVATE 1313 + global EXTN(jconst_idct_islow_mmx) PRIVATE
1557 1314
1558 EXTN(jconst_idct_islow_mmx): 1315 EXTN(jconst_idct_islow_mmx):
1559 1316
1560 @@ -107,7 +107,7 @@ 1317 @@ -107,7 +107,7 @@
1561 ; JCOEF workspace[DCTSIZE2] 1318 ; JCOEF workspace[DCTSIZE2]
1562 1319
1563 align 16 1320 align 16
1564 - global EXTN(jsimd_idct_islow_mmx) 1321 - global EXTN(jsimd_idct_islow_mmx)
1565 + global EXTN(jsimd_idct_islow_mmx) PRIVATE 1322 + global EXTN(jsimd_idct_islow_mmx) PRIVATE
1566 1323
1567 EXTN(jsimd_idct_islow_mmx): 1324 EXTN(jsimd_idct_islow_mmx):
1568 push ebp 1325 push ebp
1569 Index: simd/jcgrymmx.asm 1326 Index: simd/jcgrymmx.asm
1570 =================================================================== 1327 ===================================================================
1571 --- simd/jcgrymmx.asm» (revision 722) 1328 --- simd/jcgrymmx.asm» (revision 733)
1572 +++ simd/jcgrymmx.asm (working copy) 1329 +++ simd/jcgrymmx.asm (working copy)
1573 @@ -41,7 +41,7 @@ 1330 @@ -41,7 +41,7 @@
1574 %define gotptr wk(0)-SIZEOF_POINTER ; void * gotptr 1331 %define gotptr wk(0)-SIZEOF_POINTER ; void * gotptr
1575 1332
1576 align 16 1333 align 16
1577 - global EXTN(jsimd_rgb_gray_convert_mmx) 1334 - global EXTN(jsimd_rgb_gray_convert_mmx)
1578 + global EXTN(jsimd_rgb_gray_convert_mmx) PRIVATE 1335 + global EXTN(jsimd_rgb_gray_convert_mmx) PRIVATE
1579 1336
1580 EXTN(jsimd_rgb_gray_convert_mmx): 1337 EXTN(jsimd_rgb_gray_convert_mmx):
1581 push ebp 1338 push ebp
1582 Index: simd/jfss2int.asm 1339 Index: simd/jfss2int.asm
1583 =================================================================== 1340 ===================================================================
1584 --- simd/jfss2int.asm» (revision 722) 1341 --- simd/jfss2int.asm» (revision 733)
1585 +++ simd/jfss2int.asm (working copy) 1342 +++ simd/jfss2int.asm (working copy)
1586 @@ -66,7 +66,7 @@ 1343 @@ -66,7 +66,7 @@
1587 SECTION SEG_CONST 1344 SECTION SEG_CONST
1588 1345
1589 alignz 16 1346 alignz 16
1590 - global EXTN(jconst_fdct_islow_sse2) 1347 - global EXTN(jconst_fdct_islow_sse2)
1591 + global EXTN(jconst_fdct_islow_sse2) PRIVATE 1348 + global EXTN(jconst_fdct_islow_sse2) PRIVATE
1592 1349
1593 EXTN(jconst_fdct_islow_sse2): 1350 EXTN(jconst_fdct_islow_sse2):
1594 1351
1595 @@ -101,7 +101,7 @@ 1352 @@ -101,7 +101,7 @@
1596 %define WK_NUM 6 1353 %define WK_NUM 6
1597 1354
1598 align 16 1355 align 16
1599 - global EXTN(jsimd_fdct_islow_sse2) 1356 - global EXTN(jsimd_fdct_islow_sse2)
1600 + global EXTN(jsimd_fdct_islow_sse2) PRIVATE 1357 + global EXTN(jsimd_fdct_islow_sse2) PRIVATE
1601 1358
1602 EXTN(jsimd_fdct_islow_sse2): 1359 EXTN(jsimd_fdct_islow_sse2):
1603 push ebp 1360 push ebp
1604 Index: simd/jcgryss2.asm 1361 Index: simd/jcgryss2.asm
1605 =================================================================== 1362 ===================================================================
1606 --- simd/jcgryss2.asm» (revision 722) 1363 --- simd/jcgryss2.asm» (revision 733)
1607 +++ simd/jcgryss2.asm (working copy) 1364 +++ simd/jcgryss2.asm (working copy)
1608 @@ -39,7 +39,7 @@ 1365 @@ -39,7 +39,7 @@
1609 1366
1610 align 16 1367 align 16
1611 1368
1612 - global EXTN(jsimd_rgb_gray_convert_sse2) 1369 - global EXTN(jsimd_rgb_gray_convert_sse2)
1613 + global EXTN(jsimd_rgb_gray_convert_sse2) PRIVATE 1370 + global EXTN(jsimd_rgb_gray_convert_sse2) PRIVATE
1614 1371
1615 EXTN(jsimd_rgb_gray_convert_sse2): 1372 EXTN(jsimd_rgb_gray_convert_sse2):
1616 push ebp 1373 push ebp
1617 Index: simd/jccolmmx.asm 1374 Index: simd/jccolmmx.asm
1618 =================================================================== 1375 ===================================================================
1619 --- simd/jccolmmx.asm» (revision 722) 1376 --- simd/jccolmmx.asm» (revision 733)
1620 +++ simd/jccolmmx.asm (working copy) 1377 +++ simd/jccolmmx.asm (working copy)
1621 @@ -37,7 +37,7 @@ 1378 @@ -37,7 +37,7 @@
1622 SECTION SEG_CONST 1379 SECTION SEG_CONST
1623 1380
1624 alignz 16 1381 alignz 16
1625 - global EXTN(jconst_rgb_ycc_convert_mmx) 1382 - global EXTN(jconst_rgb_ycc_convert_mmx)
1626 + global EXTN(jconst_rgb_ycc_convert_mmx) PRIVATE 1383 + global EXTN(jconst_rgb_ycc_convert_mmx) PRIVATE
1627 1384
1628 EXTN(jconst_rgb_ycc_convert_mmx): 1385 EXTN(jconst_rgb_ycc_convert_mmx):
1629 1386
1630 Index: simd/jimmxred.asm 1387 Index: simd/jimmxred.asm
1631 =================================================================== 1388 ===================================================================
1632 --- simd/jimmxred.asm» (revision 722) 1389 --- simd/jimmxred.asm» (revision 733)
1633 +++ simd/jimmxred.asm (working copy) 1390 +++ simd/jimmxred.asm (working copy)
1634 @@ -72,7 +72,7 @@ 1391 @@ -72,7 +72,7 @@
1635 SECTION SEG_CONST 1392 SECTION SEG_CONST
1636 1393
1637 alignz 16 1394 alignz 16
1638 - global EXTN(jconst_idct_red_mmx) 1395 - global EXTN(jconst_idct_red_mmx)
1639 + global EXTN(jconst_idct_red_mmx) PRIVATE 1396 + global EXTN(jconst_idct_red_mmx) PRIVATE
1640 1397
1641 EXTN(jconst_idct_red_mmx): 1398 EXTN(jconst_idct_red_mmx):
1642 1399
(...skipping 10 matching lines...) Expand all
1653 %define output_col(b) (b)+20 ; JDIMENSION output_col 1410 %define output_col(b) (b)+20 ; JDIMENSION output_col
1654 1411
1655 align 16 1412 align 16
1656 - global EXTN(jsimd_idct_2x2_mmx) 1413 - global EXTN(jsimd_idct_2x2_mmx)
1657 + global EXTN(jsimd_idct_2x2_mmx) PRIVATE 1414 + global EXTN(jsimd_idct_2x2_mmx) PRIVATE
1658 1415
1659 EXTN(jsimd_idct_2x2_mmx): 1416 EXTN(jsimd_idct_2x2_mmx):
1660 push ebp 1417 push ebp
1661 Index: simd/jsimdext.inc 1418 Index: simd/jsimdext.inc
1662 =================================================================== 1419 ===================================================================
1663 --- simd/jsimdext.inc» (revision 722) 1420 --- simd/jsimdext.inc» (revision 733)
1664 +++ simd/jsimdext.inc (working copy) 1421 +++ simd/jsimdext.inc (working copy)
1665 @@ -73,6 +73,9 @@ 1422 @@ -73,6 +73,9 @@
1666 ; * *BSD family Unix using elf format 1423 ; * *BSD family Unix using elf format
1667 ; * Unix System V, including Solaris x86, UnixWare and SCO Unix 1424 ; * Unix System V, including Solaris x86, UnixWare and SCO Unix
1668 1425
1669 +; PIC is the default on Linux 1426 +; PIC is the default on Linux
1670 +%define PIC 1427 +%define PIC
1671 + 1428 +
1672 ; mark stack as non-executable 1429 ; mark stack as non-executable
1673 section .note.GNU-stack noalloc noexec nowrite progbits 1430 section .note.GNU-stack noalloc noexec nowrite progbits
1674 1431
1675 @@ -373,4 +376,14 @@ 1432 @@ -375,4 +378,14 @@
1676 ; 1433 ;
1677 %include "jsimdcfg.inc" 1434 %include "jsimdcfg.inc"
1678 1435
1679 +; Begin chromium edits 1436 +; Begin chromium edits
1680 +%ifdef MACHO ; ----(nasm -fmacho -DMACHO ...)-------- 1437 +%ifdef MACHO ; ----(nasm -fmacho -DMACHO ...)--------
1681 +%define PRIVATE :private_extern 1438 +%define PRIVATE :private_extern
1682 +%elifdef ELF ; ----(nasm -felf[64] -DELF ...)------------ 1439 +%elifdef ELF ; ----(nasm -felf[64] -DELF ...)------------
1683 +%define PRIVATE :hidden 1440 +%define PRIVATE :hidden
1684 +%else 1441 +%else
1685 +%define PRIVATE 1442 +%define PRIVATE
1686 +%endif 1443 +%endif
1687 +; End chromium edits 1444 +; End chromium edits
1688 + 1445 +
1689 ; -------------------------------------------------------------------------- 1446 ; --------------------------------------------------------------------------
1690 Index: simd/jdclrmmx.asm 1447 Index: simd/jdclrmmx.asm
1691 =================================================================== 1448 ===================================================================
1692 --- simd/jdclrmmx.asm» (revision 722) 1449 --- simd/jdclrmmx.asm» (revision 733)
1693 +++ simd/jdclrmmx.asm (working copy) 1450 +++ simd/jdclrmmx.asm (working copy)
1694 @@ -40,7 +40,7 @@ 1451 @@ -40,7 +40,7 @@
1695 %define gotptr wk(0)-SIZEOF_POINTER ; void * gotptr 1452 %define gotptr wk(0)-SIZEOF_POINTER ; void * gotptr
1696 1453
1697 align 16 1454 align 16
1698 - global EXTN(jsimd_ycc_rgb_convert_mmx) 1455 - global EXTN(jsimd_ycc_rgb_convert_mmx)
1699 + global EXTN(jsimd_ycc_rgb_convert_mmx) PRIVATE 1456 + global EXTN(jsimd_ycc_rgb_convert_mmx) PRIVATE
1700 1457
1701 EXTN(jsimd_ycc_rgb_convert_mmx): 1458 EXTN(jsimd_ycc_rgb_convert_mmx):
1702 push ebp 1459 push ebp
1703 Index: simd/jccolss2.asm 1460 Index: simd/jccolss2.asm
1704 =================================================================== 1461 ===================================================================
1705 --- simd/jccolss2.asm» (revision 722) 1462 --- simd/jccolss2.asm» (revision 733)
1706 +++ simd/jccolss2.asm (working copy) 1463 +++ simd/jccolss2.asm (working copy)
1707 @@ -34,7 +34,7 @@ 1464 @@ -34,7 +34,7 @@
1708 SECTION SEG_CONST 1465 SECTION SEG_CONST
1709 1466
1710 alignz 16 1467 alignz 16
1711 - global EXTN(jconst_rgb_ycc_convert_sse2) 1468 - global EXTN(jconst_rgb_ycc_convert_sse2)
1712 + global EXTN(jconst_rgb_ycc_convert_sse2) PRIVATE 1469 + global EXTN(jconst_rgb_ycc_convert_sse2) PRIVATE
1713 1470
1714 EXTN(jconst_rgb_ycc_convert_sse2): 1471 EXTN(jconst_rgb_ycc_convert_sse2):
1715 1472
1716 Index: simd/jisseflt.asm 1473 Index: simd/jisseflt.asm
1717 =================================================================== 1474 ===================================================================
1718 --- simd/jisseflt.asm» (revision 722) 1475 --- simd/jisseflt.asm» (revision 733)
1719 +++ simd/jisseflt.asm (working copy) 1476 +++ simd/jisseflt.asm (working copy)
1720 @@ -37,7 +37,7 @@ 1477 @@ -37,7 +37,7 @@
1721 SECTION SEG_CONST 1478 SECTION SEG_CONST
1722 1479
1723 alignz 16 1480 alignz 16
1724 - global EXTN(jconst_idct_float_sse) 1481 - global EXTN(jconst_idct_float_sse)
1725 + global EXTN(jconst_idct_float_sse) PRIVATE 1482 + global EXTN(jconst_idct_float_sse) PRIVATE
1726 1483
1727 EXTN(jconst_idct_float_sse): 1484 EXTN(jconst_idct_float_sse):
1728 1485
1729 @@ -73,7 +73,7 @@ 1486 @@ -73,7 +73,7 @@
1730 ; FAST_FLOAT workspace[DCTSIZE2] 1487 ; FAST_FLOAT workspace[DCTSIZE2]
1731 1488
1732 align 16 1489 align 16
1733 - global EXTN(jsimd_idct_float_sse) 1490 - global EXTN(jsimd_idct_float_sse)
1734 + global EXTN(jsimd_idct_float_sse) PRIVATE 1491 + global EXTN(jsimd_idct_float_sse) PRIVATE
1735 1492
1736 EXTN(jsimd_idct_float_sse): 1493 EXTN(jsimd_idct_float_sse):
1737 push ebp 1494 push ebp
1738 Index: simd/jcqnts2i-64.asm 1495 Index: simd/jcqnts2i-64.asm
1739 =================================================================== 1496 ===================================================================
1740 --- simd/jcqnts2i-64.asm» (revision 722) 1497 --- simd/jcqnts2i-64.asm» (revision 733)
1741 +++ simd/jcqnts2i-64.asm (working copy) 1498 +++ simd/jcqnts2i-64.asm (working copy)
1742 @@ -36,7 +36,7 @@ 1499 @@ -36,7 +36,7 @@
1743 ; r12 = DCTELEM * workspace 1500 ; r12 = DCTELEM * workspace
1744 1501
1745 align 16 1502 align 16
1746 - global EXTN(jsimd_convsamp_sse2) 1503 - global EXTN(jsimd_convsamp_sse2)
1747 + global EXTN(jsimd_convsamp_sse2) PRIVATE 1504 + global EXTN(jsimd_convsamp_sse2) PRIVATE
1748 1505
1749 EXTN(jsimd_convsamp_sse2): 1506 EXTN(jsimd_convsamp_sse2):
1750 push rbp 1507 push rbp
1751 @@ -112,7 +112,7 @@ 1508 @@ -112,7 +112,7 @@
1752 ; r12 = DCTELEM * workspace 1509 ; r12 = DCTELEM * workspace
1753 1510
1754 align 16 1511 align 16
1755 - global EXTN(jsimd_quantize_sse2) 1512 - global EXTN(jsimd_quantize_sse2)
1756 + global EXTN(jsimd_quantize_sse2) PRIVATE 1513 + global EXTN(jsimd_quantize_sse2) PRIVATE
1757 1514
1758 EXTN(jsimd_quantize_sse2): 1515 EXTN(jsimd_quantize_sse2):
1759 push rbp 1516 push rbp
1760 Index: simd/jdclrss2.asm 1517 Index: simd/jdclrss2.asm
1761 =================================================================== 1518 ===================================================================
1762 --- simd/jdclrss2.asm» (revision 722) 1519 --- simd/jdclrss2.asm» (revision 733)
1763 +++ simd/jdclrss2.asm (working copy) 1520 +++ simd/jdclrss2.asm (working copy)
1764 @@ -40,7 +40,7 @@ 1521 @@ -40,7 +40,7 @@
1765 %define gotptr wk(0)-SIZEOF_POINTER ; void * gotptr 1522 %define gotptr wk(0)-SIZEOF_POINTER ; void * gotptr
1766 1523
1767 align 16 1524 align 16
1768 - global EXTN(jsimd_ycc_rgb_convert_sse2) 1525 - global EXTN(jsimd_ycc_rgb_convert_sse2)
1769 + global EXTN(jsimd_ycc_rgb_convert_sse2) PRIVATE 1526 + global EXTN(jsimd_ycc_rgb_convert_sse2) PRIVATE
1770 1527
1771 EXTN(jsimd_ycc_rgb_convert_sse2): 1528 EXTN(jsimd_ycc_rgb_convert_sse2):
1772 push ebp 1529 push ebp
1773 @@ -302,6 +302,41 @@
1774 movdqa xmmA,xmmD
1775 sub ecx, byte SIZEOF_XMMWORD
1776 .column_st15:
1777 +%ifdef STRICT_MEMORY_ACCESS
1778 + ; Store the lower 8 bytes of xmmA to the output when it has enough
1779 + ; space.
1780 + cmp ecx, byte SIZEOF_MMWORD
1781 + jb short .column_st7
1782 + movq MMWORD [edi], xmmA
1783 + add edi, byte SIZEOF_MMWORD
1784 + sub ecx, byte SIZEOF_MMWORD
1785 + psrldq xmmA, SIZEOF_MMWORD
1786 +.column_st7:
1787 + ; Store the lower 4 bytes of xmmA to the output when it has enough
1788 + ; space.
1789 + cmp ecx, byte SIZEOF_DWORD
1790 + jb short .column_st3
1791 + movd DWORD [edi], xmmA
1792 + add edi, byte SIZEOF_DWORD
1793 + sub ecx, byte SIZEOF_DWORD
1794 + psrldq xmmA, SIZEOF_DWORD
1795 +.column_st3:
1796 + ; Store the lower 2 bytes of eax to the output when it has enough
1797 + ; space.
1798 + movd eax, xmmA
1799 + cmp ecx, byte SIZEOF_WORD
1800 + jb short .column_st1
1801 + mov WORD [edi], ax
1802 + add edi, byte SIZEOF_WORD
1803 + sub ecx, byte SIZEOF_WORD
1804 + shr eax, 16
1805 +.column_st1:
1806 + ; Store the lower 1 byte of eax to the output when it has enough
1807 + ; space.
1808 + test ecx, ecx
1809 + jz short .nextrow
1810 + mov BYTE [edi], al
1811 +%else
1812 mov eax,ecx
1813 xor ecx, byte 0x0F
1814 shl ecx, 2
1815 @@ -341,6 +376,7 @@
1816 por xmmE,xmmC
1817 .adj0: ; ----------------
1818 maskmovdqu xmmA,xmmE ; movntdqu XMMWORD [edi], xmmA
1819 +%endif ; STRICT_MEMORY_ACCESS ; ---------------
1820
1821 %else ; RGB_PIXELSIZE == 4 ; -----------
1822
1823 @@ -426,6 +462,22 @@
1824 movdqa xmmA,xmmD
1825 sub ecx, byte SIZEOF_XMMWORD/4
1826 .column_st15:
1827 +%ifdef STRICT_MEMORY_ACCESS
1828 + ; Store two pixels (8 bytes) of xmmA to the output when it has enough
1829 + ; space.
1830 + cmp ecx, byte SIZEOF_XMMWORD/8
1831 + jb short .column_st7
1832 + movq MMWORD [edi], xmmA
1833 + add edi, byte SIZEOF_XMMWORD/8*4
1834 + sub ecx, byte SIZEOF_XMMWORD/8
1835 + psrldq xmmA, SIZEOF_XMMWORD/8*4
1836 +.column_st7:
1837 + ; Store one pixel (4 bytes) of xmmA to the output when it has enough
1838 + ; space.
1839 + test ecx, ecx
1840 + jz short .nextrow
1841 + movd DWORD [edi], xmmA
1842 +%else
1843 cmp ecx, byte SIZEOF_XMMWORD/16
1844 jb short .nextrow
1845 mov eax,ecx
1846 @@ -465,6 +517,7 @@
1847 por xmmE,xmmG
1848 .adj0: ; ----------------
1849 maskmovdqu xmmA,xmmE ; movntdqu XMMWORD [edi], xmmA
1850 +%endif ; STRICT_MEMORY_ACCESS ; ---------------
1851
1852 %endif ; RGB_PIXELSIZE ; ---------------
1853
1854 Index: simd/jcqntsse.asm 1530 Index: simd/jcqntsse.asm
1855 =================================================================== 1531 ===================================================================
1856 --- simd/jcqntsse.asm» (revision 722) 1532 --- simd/jcqntsse.asm» (revision 733)
1857 +++ simd/jcqntsse.asm (working copy) 1533 +++ simd/jcqntsse.asm (working copy)
1858 @@ -35,7 +35,7 @@ 1534 @@ -35,7 +35,7 @@
1859 %define workspace ebp+16 ; FAST_FLOAT * workspace 1535 %define workspace ebp+16 ; FAST_FLOAT * workspace
1860 1536
1861 align 16 1537 align 16
1862 - global EXTN(jsimd_convsamp_float_sse) 1538 - global EXTN(jsimd_convsamp_float_sse)
1863 + global EXTN(jsimd_convsamp_float_sse) PRIVATE 1539 + global EXTN(jsimd_convsamp_float_sse) PRIVATE
1864 1540
1865 EXTN(jsimd_convsamp_float_sse): 1541 EXTN(jsimd_convsamp_float_sse):
1866 push ebp 1542 push ebp
1867 @@ -138,7 +138,7 @@ 1543 @@ -138,7 +138,7 @@
1868 %define workspace ebp+16 ; FAST_FLOAT * workspace 1544 %define workspace ebp+16 ; FAST_FLOAT * workspace
1869 1545
1870 align 16 1546 align 16
1871 - global EXTN(jsimd_quantize_float_sse) 1547 - global EXTN(jsimd_quantize_float_sse)
1872 + global EXTN(jsimd_quantize_float_sse) PRIVATE 1548 + global EXTN(jsimd_quantize_float_sse) PRIVATE
1873 1549
1874 EXTN(jsimd_quantize_float_sse): 1550 EXTN(jsimd_quantize_float_sse):
1875 push ebp 1551 push ebp
1876 Index: simd/jiss2int-64.asm 1552 Index: simd/jiss2int-64.asm
1877 =================================================================== 1553 ===================================================================
1878 --- simd/jiss2int-64.asm» (revision 722) 1554 --- simd/jiss2int-64.asm» (revision 733)
1879 +++ simd/jiss2int-64.asm (working copy) 1555 +++ simd/jiss2int-64.asm (working copy)
1880 @@ -67,7 +67,7 @@ 1556 @@ -67,7 +67,7 @@
1881 SECTION SEG_CONST 1557 SECTION SEG_CONST
1882 1558
1883 alignz 16 1559 alignz 16
1884 - global EXTN(jconst_idct_islow_sse2) 1560 - global EXTN(jconst_idct_islow_sse2)
1885 + global EXTN(jconst_idct_islow_sse2) PRIVATE 1561 + global EXTN(jconst_idct_islow_sse2) PRIVATE
1886 1562
1887 EXTN(jconst_idct_islow_sse2): 1563 EXTN(jconst_idct_islow_sse2):
1888 1564
1889 @@ -106,7 +106,7 @@ 1565 @@ -106,7 +106,7 @@
1890 %define WK_NUM 12 1566 %define WK_NUM 12
1891 1567
1892 align 16 1568 align 16
1893 - global EXTN(jsimd_idct_islow_sse2) 1569 - global EXTN(jsimd_idct_islow_sse2)
1894 + global EXTN(jsimd_idct_islow_sse2) PRIVATE 1570 + global EXTN(jsimd_idct_islow_sse2) PRIVATE
1895 1571
1896 EXTN(jsimd_idct_islow_sse2): 1572 EXTN(jsimd_idct_islow_sse2):
1897 push rbp 1573 push rbp
1898 Index: simd/jfmmxfst.asm 1574 Index: simd/jfmmxfst.asm
1899 =================================================================== 1575 ===================================================================
1900 --- simd/jfmmxfst.asm» (revision 722) 1576 --- simd/jfmmxfst.asm» (revision 733)
1901 +++ simd/jfmmxfst.asm (working copy) 1577 +++ simd/jfmmxfst.asm (working copy)
1902 @@ -52,7 +52,7 @@ 1578 @@ -52,7 +52,7 @@
1903 %define CONST_SHIFT (16 - PRE_MULTIPLY_SCALE_BITS - CONST_BITS) 1579 %define CONST_SHIFT (16 - PRE_MULTIPLY_SCALE_BITS - CONST_BITS)
1904 1580
1905 alignz 16 1581 alignz 16
1906 - global EXTN(jconst_fdct_ifast_mmx) 1582 - global EXTN(jconst_fdct_ifast_mmx)
1907 + global EXTN(jconst_fdct_ifast_mmx) PRIVATE 1583 + global EXTN(jconst_fdct_ifast_mmx) PRIVATE
1908 1584
1909 EXTN(jconst_fdct_ifast_mmx): 1585 EXTN(jconst_fdct_ifast_mmx):
1910 1586
1911 @@ -80,7 +80,7 @@ 1587 @@ -80,7 +80,7 @@
1912 %define WK_NUM 2 1588 %define WK_NUM 2
1913 1589
1914 align 16 1590 align 16
1915 - global EXTN(jsimd_fdct_ifast_mmx) 1591 - global EXTN(jsimd_fdct_ifast_mmx)
1916 + global EXTN(jsimd_fdct_ifast_mmx) PRIVATE 1592 + global EXTN(jsimd_fdct_ifast_mmx) PRIVATE
1917 1593
1918 EXTN(jsimd_fdct_ifast_mmx): 1594 EXTN(jsimd_fdct_ifast_mmx):
1919 push ebp 1595 push ebp
1920 Index: jdarith.c 1596 Index: jdarith.c
1921 =================================================================== 1597 ===================================================================
1922 --- jdarith.c» (revision 722) 1598 --- jdarith.c» (revision 733)
1923 +++ jdarith.c (working copy) 1599 +++ jdarith.c (working copy)
1924 @@ -150,8 +150,8 @@ 1600 @@ -150,8 +150,8 @@
1925 */ 1601 */
1926 sv = *st; 1602 sv = *st;
1927 qe = jpeg_aritab[sv & 0x7F]; /* => Qe_Value */ 1603 qe = jpeg_aritab[sv & 0x7F]; /* => Qe_Value */
1928 - nl = qe & 0xFF; qe >>= 8; /* Next_Index_LPS + Switch_MPS */ 1604 - nl = qe & 0xFF; qe >>= 8; /* Next_Index_LPS + Switch_MPS */
1929 - nm = qe & 0xFF; qe >>= 8; /* Next_Index_MPS */ 1605 - nm = qe & 0xFF; qe >>= 8; /* Next_Index_MPS */
1930 + nl = (unsigned char) qe & 0xFF; qe >>= 8; /* Next_Index_LPS + Switch_MPS * / 1606 + nl = (unsigned char) qe & 0xFF; qe >>= 8; /* Next_Index_LPS + Switch_MPS * /
1931 + nm = (unsigned char) qe & 0xFF; qe >>= 8; /* Next_Index_MPS */ 1607 + nm = (unsigned char) qe & 0xFF; qe >>= 8; /* Next_Index_MPS */
1932 1608
1933 /* Decode & estimation procedures per sections D.2.4 & D.2.5 */ 1609 /* Decode & estimation procedures per sections D.2.4 & D.2.5 */
1934 temp = e->a - qe; 1610 temp = e->a - qe;
1935 Index: jdhuff.c 1611 Index: jdhuff.c
1936 =================================================================== 1612 ===================================================================
1937 --- jdhuff.c» (revision 722) 1613 --- jdhuff.c» (revision 733)
1938 +++ jdhuff.c (working copy) 1614 +++ jdhuff.c (working copy)
1939 @@ -742,7 +742,7 @@ 1615 @@ -742,7 +742,7 @@
1940 * this module, since we'll just re-assign them on the next call.) 1616 * this module, since we'll just re-assign them on the next call.)
1941 */ 1617 */
1942 1618
1943 -#define BUFSIZE (DCTSIZE2 * 2) 1619 -#define BUFSIZE (DCTSIZE2 * 2)
1944 +#define BUFSIZE (DCTSIZE2 * 2u) 1620 +#define BUFSIZE (DCTSIZE2 * 2u)
1945 1621
1946 METHODDEF(boolean) 1622 METHODDEF(boolean)
1947 decode_mcu (j_decompress_ptr cinfo, JBLOCKROW *MCU_data) 1623 decode_mcu (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
OLDNEW
« no previous file with comments | « README-turbo.txt ('k') | jccolor.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698