nasm.h 1.67 KB
Newer Older
Josh Coalson's avatar
Josh Coalson committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
; libFLAC - Free Lossless Audio Codec library
; Copyright (C) 2001  Josh Coalson
;
; This library is free software; you can redistribute it and/or
; modify it under the terms of the GNU Library General Public
; License as published by the Free Software Foundation; either
; version 2 of the License, or (at your option) any later version.
;
; This 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
; Library General Public License for more details.
;
; You should have received a copy of the GNU Library General Public
; License along with this library; if not, write to the
; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
; Boston, MA  02111-1307, USA.

	bits 32

21
%ifdef OBJ_FORMAT_win32
Josh Coalson's avatar
Josh Coalson committed
22
23
24
25
	%define FLAC__PUBLIC_NEEDS_UNDERSCORE
	%idefine code_section section .text align=16 class=CODE use32
	%idefine data_section section .data align=32 class=DATA use32
	%idefine bss_section  section .bss  align=32 class=DATA use32
26
%elifdef OBJ_FORMAT_aout
Josh Coalson's avatar
Josh Coalson committed
27
28
29
30
	%define FLAC__PUBLIC_NEEDS_UNDERSCORE
	%idefine code_section section .text
	%idefine data_section section .data
	%idefine bss_section  section .bss
31
%elifdef OBJ_FORMAT_elf
Josh Coalson's avatar
Josh Coalson committed
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
	%idefine code_section section .text align=16
	%idefine data_section section .data align=32
	%idefine bss_section  section .bss  align=32
%else
	%error unsupported object format!
%endif

%imacro cglobal 1
	%ifdef FLAC__PUBLIC_NEEDS_UNDERSCORE
		global _%1
	%else
		global %1
	%endif
%endmacro

%imacro cextern 1
	%ifdef FLAC__PUBLIC_NEEDS_UNDERSCORE
		extern _%1
	%else
		extern %1
	%endif
%endmacro

%imacro cident 1
_%1:
%1:
%endmacro