/* asminit.def -- This file is part of the LZO real-time data compression library. Copyright (C) 1996-2017 Markus Franz Xaver Johannes Oberhumer All Rights Reserved. The LZO library is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. The LZO library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with the LZO library; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Markus F.X.J. Oberhumer http://www.oberhumer.com/opensource/lzo/ */ #undef _ #ifndef NAME1 #if defined(__ELF__) # define NAME1(a) a #elif (defined(__MACH__) && defined(__APPLE__)) # define NAME1(a) _ ## a #elif defined(_WIN32) && !defined(_WIN64) # define NAME1(a) _ ## a #elif defined(_WIN64) # define NAME1(a) a #else # define NAME1(a) _ ## a # define NAME2(a) a #endif #endif #define XNAME(a,b,c) LZO_PP_ECONCAT3(NAME1(a),b,c) #ifndef LZO_PP_CONCAT2 # define LZO_PP_CONCAT2(a,b) a ## b #endif #ifndef LZO_PP_CONCAT3 # define LZO_PP_CONCAT3(a,b,c) a ## b ## c #endif #ifndef LZO_PP_ECONCAT3 # define LZO_PP_ECONCAT3(a,b,c) LZO_PP_CONCAT3(a,b,c) #endif #ifndef p2align # define p2align(a) .p2align a #endif #ifndef globalf # define globalf(a) .globl a #endif #ifndef hiddenf # if defined(__ELF__) # define hiddenf(a) .hidden a # elif (defined(__MACH__) && defined(__APPLE__)) # define hiddenf(a) .private_extern a # else # define hiddenf(a) /*empty*/ # endif #endif #ifndef typef # if defined(__ELF__) # define typef(a) .type a,@function # else # define typef(a) /*empty*/ # endif #endif #ifndef sizef # if defined(__ELF__) # define sizef(a,b) .size a,b # else # define sizef(a,b) /*empty*/ # endif #endif #if defined(__ELF__) .section .note.GNU-stack,"",@progbits #endif .text #if defined(_WIN32) && !defined(_WIN64) #if defined(LZO_WIN32_FEAT_00) LZO_WIN32_FEAT_00 #else #if defined(__GNUC__) && !defined(__clang__) .globl @feat.00 #endif @feat.00 = 1 #endif #endif #if defined(__ELF__) || (defined(__MACH__) && defined(__APPLE__)) || defined(_WIN32) || defined(_WIN64) p2align(6) #else p2align(4) #endif #ifndef db # define db .byte #endif