Remove all of the NEED_SHORT_EXTERNAL_NAMES stuff. There is scant information available as to which linkers ever had a 15-character global symbol name limit. AFAICT, it might have been a VMS and/or a.out BSD thing, but none of those platforms have ever been supported by libjpeg-turbo (nor are such systems supported by other open source libraries of this nature.)

git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1307 632fc199-4ca6-4c93-a231-07263d6284db
This commit is contained in:
DRC
2014-05-15 20:30:16 +00:00
parent b284a473f7
commit 3854b5ef59
19 changed files with 2 additions and 494 deletions

View File

@@ -89,32 +89,6 @@ struct cdjpeg_progress_mgr {
typedef struct cdjpeg_progress_mgr * cd_progress_ptr; typedef struct cdjpeg_progress_mgr * cd_progress_ptr;
/* Short forms of external names for systems with brain-damaged linkers. */
#ifdef NEED_SHORT_EXTERNAL_NAMES
#define jinit_read_bmp jIRdBMP
#define jinit_write_bmp jIWrBMP
#define jinit_read_gif jIRdGIF
#define jinit_write_gif jIWrGIF
#define jinit_read_ppm jIRdPPM
#define jinit_write_ppm jIWrPPM
#define jinit_read_rle jIRdRLE
#define jinit_write_rle jIWrRLE
#define jinit_read_targa jIRdTarga
#define jinit_write_targa jIWrTarga
#define read_quant_tables RdQTables
#define read_scan_script RdScnScript
#define set_quality_ratings SetQRates
#define set_quant_slots SetQSlots
#define set_sample_factors SetSFacts
#define read_color_map RdCMap
#define enable_signal_catcher EnSigCatcher
#define start_progress_monitor StProgMon
#define end_progress_monitor EnProgMon
#define read_stdin RdStdin
#define write_stdout WrStdout
#endif /* NEED_SHORT_EXTERNAL_NAMES */
/* Module selection routines for I/O modules. */ /* Module selection routines for I/O modules. */
EXTERN(cjpeg_source_ptr) jinit_read_bmp JPP((j_compress_ptr cinfo)); EXTERN(cjpeg_source_ptr) jinit_read_bmp JPP((j_compress_ptr cinfo));

View File

@@ -94,9 +94,7 @@ pass these through the common routines provided.
wherever possible. (Note that our method-based calling conventions help this wherever possible. (Note that our method-based calling conventions help this
a lot: in many modules only the initialization function will ever need to be a lot: in many modules only the initialization function will ever need to be
called directly, so only that function need be externally visible.) All called directly, so only that function need be externally visible.) All
global function names should begin with "jpeg_", and should have an global function names should begin with "jpeg_".
abbreviated name (unique in the first six characters) substituted by macro
when NEED_SHORT_EXTERNAL_NAMES is set.
3. Don't use global variables; anything that must be used in another module 3. Don't use global variables; anything that must be used in another module
should be in the common data structures. should be in the common data structures.

View File

@@ -136,16 +136,6 @@ AC_TRY_RUN(
[AC_MSG_RESULT(yes)], [AC_MSG_RESULT(yes)],
[AC_MSG_RESULT(Assuming that right shift is signed on target machine.)]) [AC_MSG_RESULT(Assuming that right shift is signed on target machine.)])
# test whether global names are unique to at least 15 chars
AC_MSG_CHECKING([for short external names])
AC_TRY_LINK(
[int possibly_duplicate_function () { return 0; }
int possibly_dupli_function () { return 1; }], [ ],
[AC_MSG_RESULT(ok)],
[AC_MSG_RESULT(short)
AC_DEFINE([NEED_SHORT_EXTERNAL_NAMES], 1,
[Define if linker requires that the first 15 characters of global names be unique.])])
# Checks for library functions. # Checks for library functions.
AC_CHECK_FUNCS([memset memcpy], [], AC_CHECK_FUNCS([memset memcpy], [],
[AC_DEFINE([NEED_BSD_STRINGS], 1, [AC_DEFINE([NEED_BSD_STRINGS], 1,

View File

@@ -30,13 +30,6 @@ typedef struct {
/* If no code has been allocated for a symbol S, ehufsi[S] contains 0 */ /* If no code has been allocated for a symbol S, ehufsi[S] contains 0 */
} c_derived_tbl; } c_derived_tbl;
/* Short forms of external names for systems with brain-damaged linkers. */
#ifdef NEED_SHORT_EXTERNAL_NAMES
#define jpeg_make_c_derived_tbl jMkCDerived
#define jpeg_gen_optimal_table jGenOptTbl
#endif /* NEED_SHORT_EXTERNAL_NAMES */
/* Expand a Huffman table definition into the derived format */ /* Expand a Huffman table definition into the derived format */
EXTERN(void) jpeg_make_c_derived_tbl EXTERN(void) jpeg_make_c_derived_tbl
JPP((j_compress_ptr cinfo, boolean isDC, int tblno, JPP((j_compress_ptr cinfo, boolean isDC, int tblno,

View File

@@ -40,10 +40,6 @@
memset/memcpy in <string.h>. */ memset/memcpy in <string.h>. */
#undef NEED_BSD_STRINGS #undef NEED_BSD_STRINGS
/* Define if linker requires that the first 15 characters of global names be
unique. */
#undef NEED_SHORT_EXTERNAL_NAMES
/* Define if you need to include <sys/types.h> to get size_t. */ /* Define if you need to include <sys/types.h> to get size_t. */
#undef NEED_SYS_TYPES_H #undef NEED_SYS_TYPES_H

View File

@@ -77,11 +77,6 @@
*/ */
#undef NEED_FAR_POINTERS #undef NEED_FAR_POINTERS
/* Define this if your linker needs global names to be unique in less
* than the first 15 characters.
*/
#undef NEED_SHORT_EXTERNAL_NAMES
/* Although a real ANSI C compiler can deal perfectly well with pointers to /* Although a real ANSI C compiler can deal perfectly well with pointers to
* unspecified structures (see "incomplete types" in the spec), a few pre-ANSI * unspecified structures (see "incomplete types" in the spec), a few pre-ANSI
* and pseudo-ANSI compilers get confused. To keep one of these bozos happy, * and pseudo-ANSI compilers get confused. To keep one of these bozos happy,

26
jdct.h
View File

@@ -86,32 +86,6 @@ typedef FAST_FLOAT FLOAT_MULT_TYPE; /* preferred floating type */
#define RANGE_MASK (MAXJSAMPLE * 4 + 3) /* 2 bits wider than legal samples */ #define RANGE_MASK (MAXJSAMPLE * 4 + 3) /* 2 bits wider than legal samples */
/* Short forms of external names for systems with brain-damaged linkers. */
#ifdef NEED_SHORT_EXTERNAL_NAMES
#define jpeg_fdct_islow jFDislow
#define jpeg_fdct_ifast jFDifast
#define jpeg_fdct_float jFDfloat
#define jpeg_idct_islow jRDislow
#define jpeg_idct_ifast jRDifast
#define jpeg_idct_float jRDfloat
#define jpeg_idct_7x7 jRD7x7
#define jpeg_idct_6x6 jRD6x6
#define jpeg_idct_5x5 jRD5x5
#define jpeg_idct_4x4 jRD4x4
#define jpeg_idct_3x3 jRD3x3
#define jpeg_idct_2x2 jRD2x2
#define jpeg_idct_1x1 jRD1x1
#define jpeg_idct_9x9 jRD9x9
#define jpeg_idct_10x10 jRD10x10
#define jpeg_idct_11x11 jRD11x11
#define jpeg_idct_12x12 jRD12x12
#define jpeg_idct_13x13 jRD13x13
#define jpeg_idct_14x14 jRD14x14
#define jpeg_idct_15x15 jRD15x15
#define jpeg_idct_16x16 jRD16x16
#endif /* NEED_SHORT_EXTERNAL_NAMES */
/* Extern declarations for the forward and inverse DCT routines. */ /* Extern declarations for the forward and inverse DCT routines. */
EXTERN(void) jpeg_fdct_islow JPP((DCTELEM * data)); EXTERN(void) jpeg_fdct_islow JPP((DCTELEM * data));

View File

@@ -12,14 +12,6 @@
* progressive decoder (jdphuff.c). No other modules need to see these. * progressive decoder (jdphuff.c). No other modules need to see these.
*/ */
/* Short forms of external names for systems with brain-damaged linkers. */
#ifdef NEED_SHORT_EXTERNAL_NAMES
#define jpeg_make_d_derived_tbl jMkDDerived
#define jpeg_fill_bit_buffer jFilBitBuf
#define jpeg_huff_decode jHufDecode
#endif /* NEED_SHORT_EXTERNAL_NAMES */
/* Derived data constructed for each Huffman table */ /* Derived data constructed for each Huffman table */

View File

@@ -41,10 +41,6 @@
* want to refer to it directly. * want to refer to it directly.
*/ */
#ifdef NEED_SHORT_EXTERNAL_NAMES
#define jpeg_std_message_table jMsgTable
#endif
#define JMESSAGE(code,string) string , #define JMESSAGE(code,string) string ,
const char * const jpeg_std_message_table[] = { const char * const jpeg_std_message_table[] = {

View File

@@ -19,20 +19,6 @@
*/ */
/* Short forms of external names for systems with brain-damaged linkers. */
#ifdef NEED_SHORT_EXTERNAL_NAMES
#define jpeg_get_small jGetSmall
#define jpeg_free_small jFreeSmall
#define jpeg_get_large jGetLarge
#define jpeg_free_large jFreeLarge
#define jpeg_mem_available jMemAvail
#define jpeg_open_backing_store jOpenBackStore
#define jpeg_mem_init jMemInit
#define jpeg_mem_term jMemTerm
#endif /* NEED_SHORT_EXTERNAL_NAMES */
/* /*
* These two functions are used to allocate and release small chunks of * These two functions are used to allocate and release small chunks of
* memory. (Typically the total amount requested through jpeg_get_small is * memory. (Typically the total amount requested through jpeg_get_small is

View File

@@ -292,48 +292,6 @@ struct jpeg_color_quantizer {
#endif #endif
/* Short forms of external names for systems with brain-damaged linkers. */
#ifdef NEED_SHORT_EXTERNAL_NAMES
#define jinit_compress_master jICompress
#define jinit_c_master_control jICMaster
#define jinit_c_main_controller jICMainC
#define jinit_c_prep_controller jICPrepC
#define jinit_c_coef_controller jICCoefC
#define jinit_color_converter jICColor
#define jinit_downsampler jIDownsampler
#define jinit_forward_dct jIFDCT
#define jinit_huff_encoder jIHEncoder
#define jinit_phuff_encoder jIPHEncoder
#define jinit_arith_encoder jIAEncoder
#define jinit_marker_writer jIMWriter
#define jinit_master_decompress jIDMaster
#define jinit_d_main_controller jIDMainC
#define jinit_d_coef_controller jIDCoefC
#define jinit_d_post_controller jIDPostC
#define jinit_input_controller jIInCtlr
#define jinit_marker_reader jIMReader
#define jinit_huff_decoder jIHDecoder
#define jinit_phuff_decoder jIPHDecoder
#define jinit_arith_decoder jIADecoder
#define jinit_inverse_dct jIIDCT
#define jinit_upsampler jIUpsampler
#define jinit_color_deconverter jIDColor
#define jinit_1pass_quantizer jI1Quant
#define jinit_2pass_quantizer jI2Quant
#define jinit_merged_upsampler jIMUpsampler
#define jinit_memory_mgr jIMemMgr
#define jdiv_round_up jDivRound
#define jround_up jRound
#define jcopy_sample_rows jCopySamples
#define jcopy_block_row jCopyBlocks
#define jzero_far jZeroFar
#define jpeg_zigzag_order jZIGTable
#define jpeg_natural_order jZAGTable
#define jpeg_aritab jAriTab
#endif /* NEED_SHORT_EXTERNAL_NAMES */
/* Compression module initialization routines */ /* Compression module initialization routines */
EXTERN(void) jinit_compress_master JPP((j_compress_ptr cinfo)); EXTERN(void) jinit_compress_master JPP((j_compress_ptr cinfo));
EXTERN(void) jinit_c_master_control JPP((j_compress_ptr cinfo, EXTERN(void) jinit_c_master_control JPP((j_compress_ptr cinfo,

View File

@@ -898,78 +898,6 @@ typedef JMETHOD(boolean, jpeg_marker_parser_method, (j_decompress_ptr cinfo));
#endif #endif
/* Short forms of external names for systems with brain-damaged linkers.
* We shorten external names to be unique in the first six letters, which
* is good enough for all known systems.
* (If your compiler itself needs names to be unique in less than 15
* characters, you are out of luck. Get a better compiler.)
*/
#ifdef NEED_SHORT_EXTERNAL_NAMES
#define jpeg_std_error jStdError
#define jpeg_CreateCompress jCreaCompress
#define jpeg_CreateDecompress jCreaDecompress
#define jpeg_destroy_compress jDestCompress
#define jpeg_destroy_decompress jDestDecompress
#define jpeg_stdio_dest jStdDest
#define jpeg_stdio_src jStdSrc
#if JPEG_LIB_VERSION >= 80 || defined(MEM_SRCDST_SUPPORTED)
#define jpeg_mem_dest jMemDest
#define jpeg_mem_src jMemSrc
#endif
#define jpeg_set_defaults jSetDefaults
#define jpeg_set_colorspace jSetColorspace
#define jpeg_default_colorspace jDefColorspace
#define jpeg_set_quality jSetQuality
#define jpeg_set_linear_quality jSetLQuality
#if JPEG_LIB_VERSION >= 70
#define jpeg_default_qtables jDefQTables
#endif
#define jpeg_add_quant_table jAddQuantTable
#define jpeg_quality_scaling jQualityScaling
#define jpeg_simple_progression jSimProgress
#define jpeg_suppress_tables jSuppressTables
#define jpeg_alloc_quant_table jAlcQTable
#define jpeg_alloc_huff_table jAlcHTable
#define jpeg_start_compress jStrtCompress
#define jpeg_write_scanlines jWrtScanlines
#define jpeg_finish_compress jFinCompress
#if JPEG_LIB_VERSION >= 70
#define jpeg_calc_jpeg_dimensions jCjpegDimensions
#endif
#define jpeg_write_raw_data jWrtRawData
#define jpeg_write_marker jWrtMarker
#define jpeg_write_m_header jWrtMHeader
#define jpeg_write_m_byte jWrtMByte
#define jpeg_write_tables jWrtTables
#define jpeg_read_header jReadHeader
#define jpeg_start_decompress jStrtDecompress
#define jpeg_read_scanlines jReadScanlines
#define jpeg_finish_decompress jFinDecompress
#define jpeg_read_raw_data jReadRawData
#define jpeg_has_multiple_scans jHasMultScn
#define jpeg_start_output jStrtOutput
#define jpeg_finish_output jFinOutput
#define jpeg_input_complete jInComplete
#define jpeg_new_colormap jNewCMap
#define jpeg_consume_input jConsumeInput
#if JPEG_LIB_VERSION >= 80
#define jpeg_core_output_dimensions jCoreDimensions
#endif
#define jpeg_calc_output_dimensions jCalcDimensions
#define jpeg_save_markers jSaveMarkers
#define jpeg_set_marker_processor jSetMarker
#define jpeg_read_coefficients jReadCoefs
#define jpeg_write_coefficients jWrtCoefs
#define jpeg_copy_critical_parameters jCopyCrit
#define jpeg_abort_compress jAbrtCompress
#define jpeg_abort_decompress jAbrtDecompress
#define jpeg_abort jAbort
#define jpeg_destroy jDestroy
#define jpeg_resync_to_restart jResyncRestart
#endif /* NEED_SHORT_EXTERNAL_NAMES */
/* Default error-management setup */ /* Default error-management setup */
EXTERN(struct jpeg_error_mgr *) jpeg_std_error EXTERN(struct jpeg_error_mgr *) jpeg_std_error
JPP((struct jpeg_error_mgr * err)); JPP((struct jpeg_error_mgr * err));

27
jsimd.h
View File

@@ -10,33 +10,6 @@
* *
*/ */
/* Short forms of external names for systems with brain-damaged linkers. */
#ifdef NEED_SHORT_EXTERNAL_NAMES
#define jsimd_can_rgb_ycc jSCanRgbYcc
#define jsimd_can_rgb_gray jSCanRgbGry
#define jsimd_can_ycc_rgb jSCanYccRgb
#define jsimd_rgb_ycc_convert jSRgbYccConv
#define jsimd_rgb_gray_convert jSRgbGryConv
#define jsimd_ycc_rgb_convert jSYccRgbConv
#define jsimd_can_h2v2_downsample jSCanH2V2Down
#define jsimd_can_h2v1_downsample jSCanH2V1Down
#define jsimd_h2v2_downsample jSH2V2Down
#define jsimd_h2v1_downsample jSH2V1Down
#define jsimd_can_h2v2_upsample jSCanH2V2Up
#define jsimd_can_h2v1_upsample jSCanH2V1Up
#define jsimd_h2v2_upsample jSH2V2Up
#define jsimd_h2v1_upsample jSH2V1Up
#define jsimd_can_h2v2_fancy_upsample jSCanH2V2FUp
#define jsimd_can_h2v1_fancy_upsample jSCanH2V1FUp
#define jsimd_h2v2_fancy_upsample jSH2V2FUp
#define jsimd_h2v1_fancy_upsample jSH2V1FUp
#define jsimd_can_h2v2_merged_upsample jSCanH2V2MUp
#define jsimd_can_h2v1_merged_upsample jSCanH2V1MUp
#define jsimd_h2v2_merged_upsample jSH2V2MUp
#define jsimd_h2v1_merged_upsample jSH2V1MUp
#endif /* NEED_SHORT_EXTERNAL_NAMES */
EXTERN(int) jsimd_can_rgb_ycc JPP((void)); EXTERN(int) jsimd_can_rgb_ycc JPP((void));
EXTERN(int) jsimd_can_rgb_gray JPP((void)); EXTERN(int) jsimd_can_rgb_gray JPP((void));
EXTERN(int) jsimd_can_ycc_rgb JPP((void)); EXTERN(int) jsimd_can_ycc_rgb JPP((void));

View File

@@ -9,35 +9,6 @@
* *
*/ */
/* Short forms of external names for systems with brain-damaged linkers. */
#ifdef NEED_SHORT_EXTERNAL_NAMES
#define jsimd_can_convsamp jSCanConv
#define jsimd_can_convsamp_float jSCanConvF
#define jsimd_convsamp jSConv
#define jsimd_convsamp_float jSConvF
#define jsimd_can_fdct_islow jSCanFDCTIS
#define jsimd_can_fdct_ifast jSCanFDCTIF
#define jsimd_can_fdct_float jSCanFDCTFl
#define jsimd_fdct_islow jSFDCTIS
#define jsimd_fdct_ifast jSFDCTIF
#define jsimd_fdct_float jSFDCTFl
#define jsimd_can_quantize jSCanQuant
#define jsimd_can_quantize_float jSCanQuantF
#define jsimd_quantize jSQuant
#define jsimd_quantize_float jSQuantF
#define jsimd_can_idct_2x2 jSCanIDCT22
#define jsimd_can_idct_4x4 jSCanIDCT44
#define jsimd_idct_2x2 jSIDCT22
#define jsimd_idct_4x4 jSIDCT44
#define jsimd_can_idct_islow jSCanIDCTIS
#define jsimd_can_idct_ifast jSCanIDCTIF
#define jsimd_can_idct_float jSCanIDCTFl
#define jsimd_idct_islow jSIDCTIS
#define jsimd_idct_ifast jSIDCTIF
#define jsimd_idct_float jSIDCTFl
#endif /* NEED_SHORT_EXTERNAL_NAMES */
EXTERN(int) jsimd_can_convsamp JPP((void)); EXTERN(int) jsimd_can_convsamp JPP((void));
EXTERN(int) jsimd_can_convsamp_float JPP((void)); EXTERN(int) jsimd_can_convsamp_float JPP((void));

View File

@@ -2949,11 +2949,7 @@ The sample applications cjpeg and djpeg can support 12-bit mode only for PPM
and GIF file formats; you must disable the other file formats to compile a and GIF file formats; you must disable the other file formats to compile a
12-bit cjpeg or djpeg. (install.txt has more information about that.) 12-bit cjpeg or djpeg. (install.txt has more information about that.)
At present, a 12-bit library can handle *only* 12-bit images, not both At present, a 12-bit library can handle *only* 12-bit images, not both
precisions. (If you need to include both 8- and 12-bit libraries in a single precisions.
application, you could probably do it by defining NEED_SHORT_EXTERNAL_NAMES
for just one of the copies. You'd have to access the 8-bit and 12-bit copies
from separate application source files. This is untested ... if you try it,
we'd like to hear whether it works!)
Note that a 12-bit library always compresses in Huffman optimization mode, Note that a 12-bit library always compresses in Huffman optimization mode,
in order to generate valid Huffman tables. This is necessary because our in order to generate valid Huffman tables. This is necessary because our
@@ -3035,10 +3031,6 @@ heavily dependent on stdio.) malloc and free are called only from the memory
manager "back end" module, so you can use a different memory allocator by manager "back end" module, so you can use a different memory allocator by
replacing that one file. replacing that one file.
The code generally assumes that C names must be unique in the first 15
characters. However, global function names can be made unique in the
first 6 characters by defining NEED_SHORT_EXTERNAL_NAMES.
More info about porting the code may be gleaned by reading jconfig.txt, More info about porting the code may be gleaned by reading jconfig.txt,
jmorecfg.h, and jinclude.h. jmorecfg.h, and jinclude.h.

View File

@@ -21,134 +21,6 @@
#define JSIMD_ARM_NEON 0x10 #define JSIMD_ARM_NEON 0x10
#define JSIMD_MIPS_DSPR2 0x20 #define JSIMD_MIPS_DSPR2 0x20
/* Short forms of external names for systems with brain-damaged linkers. */
#ifdef NEED_SHORT_EXTERNAL_NAMES
#define jpeg_simd_cpu_support jSiCpuSupport
#define jsimd_rgb_ycc_convert_mmx jSRGBYCCM
#define jsimd_extrgb_ycc_convert_mmx jSEXTRGBYCCM
#define jsimd_extrgbx_ycc_convert_mmx jSEXTRGBXYCCM
#define jsimd_extbgr_ycc_convert_mmx jSEXTBGRYCCM
#define jsimd_extbgrx_ycc_convert_mmx jSEXTBGRXYCCM
#define jsimd_extxbgr_ycc_convert_mmx jSEXTXBGRYCCM
#define jsimd_extxrgb_ycc_convert_mmx jSEXTXRGBYCCM
#define jsimd_rgb_gray_convert_mmx jSRGBGRYM
#define jsimd_extrgb_gray_convert_mmx jSEXTRGBGRYM
#define jsimd_extrgbx_gray_convert_mmx jSEXTRGBXGRYM
#define jsimd_extbgr_gray_convert_mmx jSEXTBGRGRYM
#define jsimd_extbgrx_gray_convert_mmx jSEXTBGRXGRYM
#define jsimd_extxbgr_gray_convert_mmx jSEXTXBGRGRYM
#define jsimd_extxrgb_gray_convert_mmx jSEXTXRGBGRYM
#define jsimd_ycc_rgb_convert_mmx jSYCCRGBM
#define jsimd_ycc_extrgb_convert_mmx jSYCCEXTRGBM
#define jsimd_ycc_extrgbx_convert_mmx jSYCCEXTRGBXM
#define jsimd_ycc_extbgr_convert_mmx jSYCCEXTBGRM
#define jsimd_ycc_extbgrx_convert_mmx jSYCCEXTBGRXM
#define jsimd_ycc_extxbgr_convert_mmx jSYCCEXTXBGRM
#define jsimd_ycc_extxrgb_convert_mmx jSYCCEXTXRGBM
#define jconst_rgb_ycc_convert_sse2 jSCRGBYCCS2
#define jsimd_rgb_ycc_convert_sse2 jSRGBYCCS2
#define jsimd_extrgb_ycc_convert_sse2 jSEXTRGBYCCS2
#define jsimd_extrgbx_ycc_convert_sse2 jSEXTRGBXYCCS2
#define jsimd_extbgr_ycc_convert_sse2 jSEXTBGRYCCS2
#define jsimd_extbgrx_ycc_convert_sse2 jSEXTBGRXYCCS2
#define jsimd_extxbgr_ycc_convert_sse2 jSEXTXBGRYCCS2
#define jsimd_extxrgb_ycc_convert_sse2 jSEXTXRGBYCCS2
#define jconst_rgb_gray_convert_sse2 jSCRGBGRYS2
#define jsimd_rgb_gray_convert_sse2 jSRGBGRYS2
#define jsimd_extrgb_gray_convert_sse2 jSEXTRGBGRYS2
#define jsimd_extrgbx_gray_convert_sse2 jSEXTRGBXGRYS2
#define jsimd_extbgr_gray_convert_sse2 jSEXTBGRGRYS2
#define jsimd_extbgrx_gray_convert_sse2 jSEXTBGRXGRYS2
#define jsimd_extxbgr_gray_convert_sse2 jSEXTXBGRGRYS2
#define jsimd_extxrgb_gray_convert_sse2 jSEXTXRGBGRYS2
#define jconst_ycc_rgb_convert_sse2 jSCYCCRGBS2
#define jsimd_ycc_rgb_convert_sse2 jSYCCRGBS2
#define jsimd_ycc_extrgb_convert_sse2 jSYCCEXTRGBS2
#define jsimd_ycc_extrgbx_convert_sse2 jSYCCEXTRGBXS2
#define jsimd_ycc_extbgr_convert_sse2 jSYCCEXTBGRS2
#define jsimd_ycc_extbgrx_convert_sse2 jSYCCEXTBGRXS2
#define jsimd_ycc_extxbgr_convert_sse2 jSYCCEXTXBGRS2
#define jsimd_ycc_extxrgb_convert_sse2 jSYCCEXTXRGBS2
#define jsimd_h2v2_downsample_mmx jSDnH2V2M
#define jsimd_h2v1_downsample_mmx jSDnH2V1M
#define jsimd_h2v2_downsample_sse2 jSDnH2V2S2
#define jsimd_h2v1_downsample_sse2 jSDnH2V1S2
#define jsimd_h2v2_upsample_mmx jSUpH2V2M
#define jsimd_h2v1_upsample_mmx jSUpH2V1M
#define jsimd_h2v2_fancy_upsample_mmx jSFUpH2V2M
#define jsimd_h2v1_fancy_upsample_mmx jSFUpH2V1M
#define jsimd_h2v2_merged_upsample_mmx jSMUpH2V2M
#define jsimd_h2v2_extrgb_merged_upsample_mmx jSMUpH2V2EXTRGBM
#define jsimd_h2v2_extrgbx_merged_upsample_mmx jSMUpH2V2EXTRGBXM
#define jsimd_h2v2_extbgr_merged_upsample_mmx jSMUpH2V2EXTBGRM
#define jsimd_h2v2_extbgrx_merged_upsample_mmx jSMUpH2V2EXTBGRXM
#define jsimd_h2v2_extxbgr_merged_upsample_mmx jSMUpH2V2EXTXBGRM
#define jsimd_h2v2_extxrgb_merged_upsample_mmx jSMUpH2V2EXTXRGBM
#define jsimd_h2v1_merged_upsample_mmx jSMUpH2V1M
#define jsimd_h2v1_extrgb_merged_upsample_mmx jSMUpH2V1EXTRGBM
#define jsimd_h2v1_extrgbx_merged_upsample_mmx jSMUpH2V1EXTRGBXM
#define jsimd_h2v1_extbgr_merged_upsample_mmx jSMUpH2V1EXTBGRM
#define jsimd_h2v1_extbgrx_merged_upsample_mmx jSMUpH2V1EXTBGRXM
#define jsimd_h2v1_extxbgr_merged_upsample_mmx jSMUpH2V1EXTXBGRM
#define jsimd_h2v1_extxrgb_merged_upsample_mmx jSMUpH2V1EXTXRGBM
#define jsimd_h2v2_upsample_sse2 jSUpH2V2S2
#define jsimd_h2v1_upsample_sse2 jSUpH2V1S2
#define jconst_fancy_upsample_sse2 jSCFUpS2
#define jsimd_h2v2_fancy_upsample_sse2 jSFUpH2V2S2
#define jsimd_h2v1_fancy_upsample_sse2 jSFUpH2V1S2
#define jconst_merged_upsample_sse2 jSCMUpS2
#define jsimd_h2v2_merged_upsample_sse2 jSMUpH2V2S2
#define jsimd_h2v2_extrgb_merged_upsample_sse2 jSMUpH2V2EXTRGBS2
#define jsimd_h2v2_extrgbx_merged_upsample_sse2 jSMUpH2V2EXTRGBXS2
#define jsimd_h2v2_extbgr_merged_upsample_sse2 jSMUpH2V2EXTBGRS2
#define jsimd_h2v2_extbgrx_merged_upsample_sse2 jSMUpH2V2EXTBGRXS2
#define jsimd_h2v2_extxbgr_merged_upsample_sse2 jSMUpH2V2EXTXBGRS2
#define jsimd_h2v2_extxrgb_merged_upsample_sse2 jSMUpH2V2EXTXRGBS2
#define jsimd_h2v1_merged_upsample_sse2 jSMUpH2V1S2
#define jsimd_h2v1_extrgb_merged_upsample_sse2 jSMUpH2V1EXTRGBS2
#define jsimd_h2v1_extrgbx_merged_upsample_sse2 jSMUpH2V1EXTRGBXS2
#define jsimd_h2v1_extbgr_merged_upsample_sse2 jSMUpH2V1EXTBGRS2
#define jsimd_h2v1_extbgrx_merged_upsample_sse2 jSMUpH2V1EXTBGRXS2
#define jsimd_h2v1_extxbgr_merged_upsample_sse2 jSMUpH2V1EXTXBGRS2
#define jsimd_h2v1_extxrgb_merged_upsample_sse2 jSMUpH2V1EXTXRGBS2
#define jsimd_convsamp_mmx jSConvM
#define jsimd_convsamp_sse2 jSConvS2
#define jsimd_convsamp_float_3dnow jSConvF3D
#define jsimd_convsamp_float_sse jSConvFS
#define jsimd_convsamp_float_sse2 jSConvFS2
#define jsimd_fdct_islow_mmx jSFDMIS
#define jsimd_fdct_ifast_mmx jSFDMIF
#define jconst_fdct_islow_sse2 jSCFDS2IS
#define jsimd_fdct_islow_sse2 jSFDS2IS
#define jconst_fdct_ifast_sse2 jSCFDS2IF
#define jsimd_fdct_ifast_sse2 jSFDS2IF
#define jsimd_fdct_float_3dnow jSFD3DF
#define jconst_fdct_float_sse jSCFDSF
#define jsimd_fdct_float_sse jSFDSF
#define jsimd_quantize_mmx jSQuantM
#define jsimd_quantize_sse2 jSQuantS2
#define jsimd_quantize_float_3dnow jSQuantF3D
#define jsimd_quantize_float_sse jSQuantFS
#define jsimd_quantize_float_sse2 jSQuantFS2
#define jsimd_idct_2x2_mmx jSIDM22
#define jsimd_idct_4x4_mmx jSIDM44
#define jconst_idct_red_sse2 jSCIDS2R
#define jsimd_idct_2x2_sse2 jSIDS222
#define jsimd_idct_4x4_sse2 jSIDS244
#define jsimd_idct_islow_mmx jSIDMIS
#define jsimd_idct_ifast_mmx jSIDMIF
#define jconst_idct_islow_sse2 jSCIDS2IS
#define jsimd_idct_islow_sse2 jSIDS2IS
#define jconst_idct_ifast_sse2 jSCIDS2IF
#define jsimd_idct_ifast_sse2 jSIDS2IF
#define jsimd_idct_float_3dnow jSID3DF
#define jconst_fdct_float_sse jSCIDSF
#define jsimd_idct_float_sse jSIDSF
#define jconst_fdct_float_sse2 jSCIDS2F
#define jsimd_idct_float_sse2 jSIDS2F
#endif /* NEED_SHORT_EXTERNAL_NAMES */
/* SIMD Ext: retrieve SIMD/CPU information */ /* SIMD Ext: retrieve SIMD/CPU information */
EXTERN(unsigned int) jpeg_simd_cpu_support JPP((void)); EXTERN(unsigned int) jpeg_simd_cpu_support JPP((void));

View File

@@ -128,69 +128,3 @@
%define _cpp_protection_JSIMD_3DNOW JSIMD_3DNOW %define _cpp_protection_JSIMD_3DNOW JSIMD_3DNOW
%define _cpp_protection_JSIMD_SSE JSIMD_SSE %define _cpp_protection_JSIMD_SSE JSIMD_SSE
%define _cpp_protection_JSIMD_SSE2 JSIMD_SSE2 %define _cpp_protection_JSIMD_SSE2 JSIMD_SSE2
; Short forms of external names for systems with brain-damaged linkers.
;
#ifdef NEED_SHORT_EXTERNAL_NAMES
%define _cpp_protection_jpeg_simd_cpu_support jpeg_simd_cpu_support
%define _cpp_protection_jsimd_rgb_ycc_convert_mmx jsimd_rgb_ycc_convert_mmx
%define _cpp_protection_jsimd_ycc_rgb_convert_mmx jsimd_ycc_rgb_convert_mmx
%define _cpp_protection_jconst_rgb_ycc_convert_sse2 jconst_rgb_ycc_convert_sse2
%define _cpp_protection_jsimd_rgb_ycc_convert_sse2 jsimd_rgb_ycc_convert_sse2
%define _cpp_protection_jconst_ycc_rgb_convert_sse2 jconst_ycc_rgb_convert_sse2
%define _cpp_protection_jsimd_ycc_rgb_convert_sse2 jsimd_ycc_rgb_convert_sse2
%define _cpp_protection_jsimd_h2v2_downsample_mmx jsimd_h2v2_downsample_mmx
%define _cpp_protection_jsimd_h2v1_downsample_mmx jsimd_h2v1_downsample_mmx
%define _cpp_protection_jsimd_h2v2_downsample_sse2 jsimd_h2v2_downsample_sse2
%define _cpp_protection_jsimd_h2v1_downsample_sse2 jsimd_h2v1_downsample_sse2
%define _cpp_protection_jsimd_h2v2_upsample_mmx jsimd_h2v2_upsample_mmx
%define _cpp_protection_jsimd_h2v1_upsample_mmx jsimd_h2v1_upsample_mmx
%define _cpp_protection_jsimd_h2v1_fancy_upsample_mmx jsimd_h2v1_fancy_upsample_mmx
%define _cpp_protection_jsimd_h2v2_fancy_upsample_mmx jsimd_h2v2_fancy_upsample_mmx
%define _cpp_protection_jsimd_h2v1_merged_upsample_mmx jsimd_h2v1_merged_upsample_mmx
%define _cpp_protection_jsimd_h2v2_merged_upsample_mmx jsimd_h2v2_merged_upsample_mmx
%define _cpp_protection_jsimd_h2v2_upsample_sse2 jsimd_h2v2_upsample_sse2
%define _cpp_protection_jsimd_h2v1_upsample_sse2 jsimd_h2v1_upsample_sse2
%define _cpp_protection_jconst_fancy_upsample_sse2 jconst_fancy_upsample_sse2
%define _cpp_protection_jsimd_h2v1_fancy_upsample_sse2 jsimd_h2v1_fancy_upsample_sse2
%define _cpp_protection_jsimd_h2v2_fancy_upsample_sse2 jsimd_h2v2_fancy_upsample_sse2
%define _cpp_protection_jconst_merged_upsample_sse2 jconst_merged_upsample_sse2
%define _cpp_protection_jsimd_h2v1_merged_upsample_sse2 jsimd_h2v1_merged_upsample_sse2
%define _cpp_protection_jsimd_h2v2_merged_upsample_sse2 jsimd_h2v2_merged_upsample_sse2
%define _cpp_protection_jsimd_convsamp_mmx jsimd_convsamp_mmx
%define _cpp_protection_jsimd_convsamp_sse2 jsimd_convsamp_sse2
%define _cpp_protection_jsimd_convsamp_float_3dnow jsimd_convsamp_float_3dnow
%define _cpp_protection_jsimd_convsamp_float_sse jsimd_convsamp_float_sse
%define _cpp_protection_jsimd_convsamp_float_sse2 jsimd_convsamp_float_sse2
%define _cpp_protection_jsimd_fdct_islow_mmx jsimd_fdct_islow_mmx
%define _cpp_protection_jsimd_fdct_ifast_mmx jsimd_fdct_ifast_mmx
%define _cpp_protection_jconst_fdct_islow_sse2 jconst_fdct_islow_sse2
%define _cpp_protection_jsimd_fdct_islow_sse2 jsimd_fdct_islow_sse2
%define _cpp_protection_jconst_fdct_ifast_sse2 jconst_fdct_ifast_sse2
%define _cpp_protection_jsimd_fdct_ifast_sse2 jsimd_fdct_ifast_sse2
%define _cpp_protection_jsimd_fdct_float_3dnow jsimd_fdct_float_3dnow
%define _cpp_protection_jconst_fdct_float_sse jconst_fdct_float_sse
%define _cpp_protection_jsimd_fdct_float_sse jsimd_fdct_float_sse
%define _cpp_protection_jsimd_quantize_mmx jsimd_quantize_mmx
%define _cpp_protection_jsimd_quantize_sse2 jsimd_quantize_sse2
%define _cpp_protection_jsimd_quantize_float_3dnow jsimd_quantize_float_3dnow
%define _cpp_protection_jsimd_quantize_float_sse jsimd_quantize_float_sse
%define _cpp_protection_jsimd_quantize_float_sse2 jsimd_quantize_float_sse2
%define _cpp_protection_jsimd_idct_2x2_mmx jsimd_idct_2x2_mmx
%define _cpp_protection_jsimd_idct_4x4_mmx jsimd_idct_4x4_mmx
%define _cpp_protection_jconst_idct_red_sse2 jconst_idct_red_sse2
%define _cpp_protection_jsimd_idct_2x2_sse2 jsimd_idct_2x2_sse2
%define _cpp_protection_jsimd_idct_4x4_sse2 jsimd_idct_4x4_sse2
%define _cpp_protection_jsimd_idct_islow_mmx jsimd_idct_islow_mmx
%define _cpp_protection_jsimd_idct_ifast_mmx jsimd_idct_ifast_mmx
%define _cpp_protection_jconst_idct_islow_sse2 jconst_idct_islow_sse2
%define _cpp_protection_jsimd_idct_islow_sse2 jsimd_idct_islow_sse2
%define _cpp_protection_jconst_idct_ifast_sse2 jconst_idct_ifast_sse2
%define _cpp_protection_jsimd_idct_ifast_sse2 jsimd_idct_ifast_sse2
%define _cpp_protection_jsimd_idct_float_3dnow jsimd_idct_float_3dnow
%define _cpp_protection_jconst_idct_float_sse jconst_idct_float_sse
%define _cpp_protection_jsimd_idct_float_sse jsimd_idct_float_sse
%define _cpp_protection_jconst_idct_float_sse2 jconst_idct_float_sse2
%define _cpp_protection_jsimd_idct_float_sse2 jsimd_idct_float_sse2
#endif /* NEED_SHORT_EXTERNAL_NAMES */

View File

@@ -77,19 +77,6 @@
*/ */
/* Short forms of external names for systems with brain-damaged linkers. */
#ifdef NEED_SHORT_EXTERNAL_NAMES
#define jtransform_parse_crop_spec jTrParCrop
#define jtransform_request_workspace jTrRequest
#define jtransform_adjust_parameters jTrAdjust
#define jtransform_execute_transform jTrExec
#define jtransform_perfect_transform jTrPerfect
#define jcopy_markers_setup jCMrkSetup
#define jcopy_markers_execute jCMrkExec
#endif /* NEED_SHORT_EXTERNAL_NAMES */
/* /*
* Codes for supported types of image transformations. * Codes for supported types of image transformations.
*/ */

View File

@@ -18,7 +18,6 @@
#undef NEED_BSD_STRINGS #undef NEED_BSD_STRINGS
#undef NEED_SYS_TYPES_H #undef NEED_SYS_TYPES_H
#undef NEED_FAR_POINTERS /* we presume a 32-bit flat memory model */ #undef NEED_FAR_POINTERS /* we presume a 32-bit flat memory model */
#undef NEED_SHORT_EXTERNAL_NAMES
#undef INCOMPLETE_TYPES_BROKEN #undef INCOMPLETE_TYPES_BROKEN
/* Define "boolean" as unsigned char, not int, per Windows custom */ /* Define "boolean" as unsigned char, not int, per Windows custom */