/* asminit.def --

   This file is part of the LZO real-time data compression library.

   Copyright (C) 1996-2015 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
   <markus@oberhumer.com>
   http://www.oberhumer.com/opensource/lzo/
 */

#ifndef NAME1
#if (defined(__MACH__) && defined(__APPLE__))
#  define NAME1(a)      _ ## a
#else
#  define NAME1(a)      _ ## a
#  define NAME2(a)           a
#endif
#endif

#ifndef LZO_PP_CONCAT2
#  define LZO_PP_CONCAT2(a,b)   a ## b
#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)
#  endif
#endif
#ifndef typef
#  if defined(__ELF__)
#    define typef(a)        .type a,@function
#  else
#    define typef(a)
#  endif
#endif
#ifndef sizef
#  if defined(__ELF__)
#    define sizef(a,b)      .size a,b
#  else
#    define sizef(a,b)
#  endif
#endif

#if defined(__ELF__)
.section .note.GNU-stack,"",@progbits
#endif
.text
#if defined(_WIN32) || defined(__WIN32__)
#  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(__WIN32__) || defined(_WIN64) || defined(__WIN64__)
p2align(6)
#else
p2align(4)
#endif
#ifndef db
#  define db            .byte
#endif
