gcc2_compiled.:
___gnu_compiled_c:
.data
	.align 4
_nswfp:
	.word	0
	.global __nsw_opts
	.align 4
__nsw_opts:
	.word	0
.text
	.align 8
LC0:
	.ascii "/etc/nsswitch.conf\0"
	.align 8
LC1:
	.ascii "r\0"
	.align 4
	.global _setnswent
	.proc	04
_setnswent:
	!#PROLOGUE# 0
	save %sp,-104,%sp
	!#PROLOGUE# 1
	sethi %hi(_nswfp),%i0
	ld [%i0+%lo(_nswfp)],%o0
	cmp %o0,0
	be,a L9
	sethi %hi(LC0),%o0
	call _fclose,0
	nop
	sethi %hi(LC0),%o0
L9:
	or %o0,%lo(LC0),%o0
	sethi %hi(LC1),%o1
	call _fopen,0
	or %o1,%lo(LC1),%o1
	st %o0,[%i0+%lo(_nswfp)]
	subcc %g0,%o0,%g0
	addx %g0,-1,%i0
	ret
	restore
	.align 4
	.global _endnswent
	.proc	020
_endnswent:
	!#PROLOGUE# 0
	save %sp,-104,%sp
	!#PROLOGUE# 1
	sethi %hi(_nswfp),%l0
	ld [%l0+%lo(_nswfp)],%o0
	cmp %o0,0
	be L13
	nop
	call _fclose,0
	nop
	st %g0,[%l0+%lo(_nswfp)]
L13:
	ret
	restore
	.reserve _nswb.6,168,"bss",4
	.reserve _buf.7,1024,"bss",1
	.align 8
LC2:
	.ascii "[NOTFOUND=return]\0"
	.align 8
LC3:
	.ascii "files\0"
	.align 8
LC4:
	.ascii "nis\0"
	.align 8
LC5:
	.ascii "yp\0"
	.align 8
LC6:
	.ascii "nisplus\0"
	.align 8
LC7:
	.ascii "nis+\0"
	.align 8
LC8:
	.ascii "dns\0"
	.align 8
LC9:
	.ascii "dbm\0"
	.align 4
	.global _getnswent
	.proc	0110
_getnswent:
	!#PROLOGUE# 0
	save %sp,-104,%sp
	!#PROLOGUE# 1
	sethi %hi(_nswfp),%l0
	ld [%l0+%lo(_nswfp)],%o0
	cmp %o0,0
	bne L70
	sethi %hi(LC0),%o0
	or %o0,%lo(LC0),%o0
	sethi %hi(LC1),%o1
	call _fopen,0
	or %o1,%lo(LC1),%o1
	st %o0,[%l0+%lo(_nswfp)]
	ld [%l0+%lo(_nswfp)],%o0
	cmp %o0,0
L70:
	be L67
	sethi %hi(_buf.7),%l3
	mov %l0,%l2
	sethi %hi(__ctype_+1),%o0
	or %o0,%lo(__ctype_+1),%l1
	or %l3,%lo(_buf.7),%o0
L72:
	ld [%l2+%lo(_nswfp)],%o2
	call _fgets,0
	mov 1024,%o1
	orcc %o0,%g0,%i0
	be,a L65
	mov 0,%i0
	call _strchr,0
	mov 35,%o1
	orcc %o0,%g0,%l0
	bne,a L25
	stb %g0,[%l0]
L25:
	ldub [%i0],%o0
	ldub [%o0+%l1],%o0
	andcc %o0,8,%g0
	be L23
	sethi %hi(__ctype_+1),%o0
	or %o0,%lo(__ctype_+1),%o1
	add %i0,1,%i0
L71:
	ldub [%i0],%o0
	ldub [%o0+%o1],%o0
	andcc %o0,8,%g0
	bne,a L71
	add %i0,1,%i0
L23:
	ldub [%i0],%o0
	cmp %o0,0
	be L72
	or %l3,%lo(_buf.7),%o0
	mov %i0,%l0
	mov %l0,%o0
	call _strchr,0
	mov 58,%o1
	orcc %o0,%g0,%i0
	bne,a L31
	stb %g0,[%i0]
L67:
	b L65
	mov 0,%i0
L31:
	add %i0,1,%i0
	sethi %hi(_nswb.6),%o0
	or %o0,%lo(_nswb.6),%o0
	mov %l0,%o1
	call _strncpy,0
	mov 32,%o2
	sethi %hi(__ctype_+1),%o0
	ldub [%i0],%o1
	or %o0,%lo(__ctype_+1),%o2
	ldub [%o1+%o2],%o0
	andcc %o0,8,%g0
	be L33
	mov %o2,%o1
	add %i0,1,%i0
L73:
	ldub [%i0],%o0
	ldub [%o0+%o1],%o0
	andcc %o0,8,%g0
	bne,a L73
	add %i0,1,%i0
L33:
	sethi %hi(_nswb.6),%o0
	or %o0,%lo(_nswb.6),%o1
	st %g0,[%o1+36]
	ldub [%i0],%o0
	cmp %o0,0
	be L37
	sethi %hi(__ctype_+1),%o0
	or %o0,%lo(__ctype_+1),%l3
	sethi %hi(_nswb.6+36),%l2
	add %o1,40,%l1
	mov %i0,%l0
L77:
	add %i0,1,%i0
L74:
	ldub [%i0],%o1
	ldub [%o1+%l3],%o0
	andcc %o0,8,%g0
	bne L41
	cmp %o1,0
	bne,a L74
	add %i0,1,%i0
L41:
	cmp %o1,0
	be L45
	mov %l0,%o0
	stb %g0,[%i0]
	add %i0,1,%i0
L45:
	sethi %hi(LC2),%o1
	call _strcmp,0
	or %o1,%lo(LC2),%o1
	cmp %o0,0
	bne L46
	mov %l0,%o0
	ld [%l2+%lo(_nswb.6+36)],%o0
	sll %o0,2,%o0
	b L47
	st %g0,[%o0+%l1]
L46:
	sethi %hi(LC3),%o1
	call _strcmp,0
	or %o1,%lo(LC3),%o1
	cmp %o0,0
	bne L48
	mov %l0,%o0
	ld [%l2+%lo(_nswb.6+36)],%o0
	b L69
	mov 1,%o1
L48:
	sethi %hi(LC4),%o1
	call _strcmp,0
	or %o1,%lo(LC4),%o1
	cmp %o0,0
	be L51
	mov %l0,%o0
	sethi %hi(LC5),%o1
	call _strcmp,0
	or %o1,%lo(LC5),%o1
	cmp %o0,0
	bne L50
	mov %l0,%o0
L51:
	ld [%l2+%lo(_nswb.6+36)],%o0
	b L69
	mov 2,%o1
L50:
	sethi %hi(LC6),%o1
	call _strcmp,0
	or %o1,%lo(LC6),%o1
	cmp %o0,0
	be L54
	mov %l0,%o0
	sethi %hi(LC7),%o1
	call _strcmp,0
	or %o1,%lo(LC7),%o1
	cmp %o0,0
	bne L53
	mov %l0,%o0
L54:
	ld [%l2+%lo(_nswb.6+36)],%o0
	b L69
	mov 3,%o1
L53:
	sethi %hi(LC8),%o1
	call _strcmp,0
	or %o1,%lo(LC8),%o1
	cmp %o0,0
	bne L56
	mov %l0,%o0
	ld [%l2+%lo(_nswb.6+36)],%o0
	b L69
	mov 4,%o1
L56:
	sethi %hi(LC9),%o1
	call _strcmp,0
	or %o1,%lo(LC9),%o1
	cmp %o0,0
	bne L67
	ld [%l2+%lo(_nswb.6+36)],%o0
	mov 5,%o1
L69:
	sll %o0,2,%o0
	st %o1,[%o0+%l1]
L47:
	ldub [%i0],%o0
	ldub [%o0+%l3],%o0
	andcc %o0,8,%g0
	be L75
	sethi %hi(_nswb.6),%o0
	sethi %hi(__ctype_+1),%o0
	or %o0,%lo(__ctype_+1),%o1
	add %i0,1,%i0
L76:
	ldub [%i0],%o0
	ldub [%o0+%o1],%o0
	andcc %o0,8,%g0
	bne,a L76
	add %i0,1,%i0
	sethi %hi(_nswb.6),%o0
L75:
	or %o0,%lo(_nswb.6),%o0
	ld [%o0+36],%o1
	add %o1,1,%o1
	st %o1,[%o0+36]
	ldub [%i0],%o0
	cmp %o0,0
	bne,a L77
	mov %i0,%l0
L37:
	sethi %hi(_nswb.6),%i0
	or %i0,%lo(_nswb.6),%i0
L65:
	ret
	restore
.data
	.align 4
_nswcache_cnt:
	.word	0
	.align 4
_nswcache_size:
	.word	0
	.align 4
_nswcache:
	.word	0
.text
	.align 4
	.proc	04
_nsw_loadcache:
	!#PROLOGUE# 0
	save %sp,-104,%sp
	!#PROLOGUE# 1
	sethi %hi(_nswfp),%l0
	ld [%l0+%lo(_nswfp)],%o0
	cmp %o0,0
	be L80
	sethi %hi(_nswcache),%l1
	call _fclose,0
	nop
L80:
	sethi %hi(LC0),%o0
	or %o0,%lo(LC0),%o0
	sethi %hi(LC1),%o1
	call _fopen,0
	or %o1,%lo(LC1),%o1
	ld [%l1+%lo(_nswcache)],%o1
	cmp %o1,0
	bne L83
	st %o0,[%l0+%lo(_nswfp)]
	sethi %hi(_nswcache_size),%o0
	mov 64,%o1
	st %o1,[%o0+%lo(_nswcache_size)]
	mov 64,%o0
	call _calloc,0
	mov 168,%o1
	cmp %o0,0
	bne L83
	st %o0,[%l1+%lo(_nswcache)]
	ld [%l0+%lo(_nswfp)],%o0
	cmp %o0,0
	be L97
	mov -1,%i0
	call _fclose,0
	nop
	b L97
	st %g0,[%l0+%lo(_nswfp)]
L83:
	sethi %hi(_nswcache_cnt),%o0
	st %g0,[%o0+%lo(_nswcache_cnt)]
	mov %o0,%l0
	sethi %hi(_nswcache_size),%l2
	sethi %hi(_nswcache),%l1
	sethi %hi(_nswfp),%l3
L87:
	call _getnswent,0
	nop
	orcc %o0,%g0,%i0
	be L88
	ld [%l0+%lo(_nswcache_cnt)],%o0
	ld [%l2+%lo(_nswcache_size)],%o2
	cmp %o0,%o2
	bl L91
	add %o2,64,%o2
	st %o2,[%l2+%lo(_nswcache_size)]
	ld [%l1+%lo(_nswcache)],%o0
	sll %o2,2,%o1
	add %o1,%o2,%o1
	sll %o1,2,%o1
	add %o1,%o2,%o1
	call _realloc,0
	sll %o1,3,%o1
	cmp %o0,0
	bne L91
	st %o0,[%l1+%lo(_nswcache)]
	ld [%l3+%lo(_nswfp)],%o0
	cmp %o0,0
	be L97
	mov -1,%i0
	call _fclose,0
	nop
	b L97
	st %g0,[%l3+%lo(_nswfp)]
L91:
	ld [%l0+%lo(_nswcache_cnt)],%o2
	mov %i0,%o1
	sll %o2,2,%o0
	add %o0,%o2,%o0
	sll %o0,2,%o0
	add %o0,%o2,%o0
	ld [%l1+%lo(_nswcache)],%o2
	sll %o0,3,%o0
	add %o2,%o0,%o0
	call _memcpy,0
	mov 168,%o2
	ld [%l0+%lo(_nswcache_cnt)],%o0
	add %o0,1,%o0
	b L87
	st %o0,[%l0+%lo(_nswcache_cnt)]
L88:
	sethi %hi(_nswfp),%l0
	ld [%l0+%lo(_nswfp)],%o0
	cmp %o0,0
	be L97
	mov 0,%i0
	call _fclose,0
	nop
	st %g0,[%l0+%lo(_nswfp)]
L97:
	ret
	restore
	.align 4
	.global _getnswbyname
	.proc	0110
_getnswbyname:
	!#PROLOGUE# 0
	save %sp,-104,%sp
	!#PROLOGUE# 1
	sethi %hi(_nswcache),%l1
	ld [%l1+%lo(_nswcache)],%o0
	cmp %o0,0
	bne L100
	mov 0,%l0
	call _nsw_loadcache,0
	nop
L100:
	sethi %hi(_nswcache_cnt),%o1
	ld [%o1+%lo(_nswcache_cnt)],%o0
	cmp %l0,%o0
	bge,a L116
	sethi %hi(_nswcache_cnt),%l1
	mov %l1,%l3
	mov %o1,%l2
	mov 0,%l1
L106:
	ld [%l3+%lo(_nswcache)],%o1
	mov %i0,%o0
	call _strcmp,0
	add %l1,%o1,%o1
	cmp %o0,0
	be L102
	ld [%l2+%lo(_nswcache_cnt)],%o0
	add %l0,1,%l0
	cmp %l0,%o0
	bl L106
	add %l1,168,%l1
L102:
	sethi %hi(_nswcache_cnt),%l1
L116:
	ld [%l1+%lo(_nswcache_cnt)],%o0
	cmp %l0,%o0
	bl L117
	sethi %hi(_nswcache),%o0
	call _nsw_loadcache,0
	mov 0,%l0
	ld [%l1+%lo(_nswcache_cnt)],%o0
	cmp %l0,%o0
	bge L118
	sethi %hi(_nswcache_cnt),%o0
	sethi %hi(_nswcache),%l3
	mov %l1,%l2
	mov 0,%l1
L113:
	mov %i0,%o0
	ld [%l3+%lo(_nswcache)],%o1
	add %l0,1,%l0
	call _strcmp,0
	add %l1,%o1,%o1
	ld [%l2+%lo(_nswcache_cnt)],%o0
	cmp %l0,%o0
	bl L113
	add %l1,168,%l1
	sethi %hi(_nswcache_cnt),%o0
L118:
	ld [%o0+%lo(_nswcache_cnt)],%o0
	cmp %l0,%o0
	bge L115
	mov 0,%i0
	sethi %hi(_nswcache),%o0
L117:
	sll %l0,2,%i0
	add %i0,%l0,%i0
	sll %i0,2,%i0
	add %i0,%l0,%i0
	ld [%o0+%lo(_nswcache)],%o0
	sll %i0,3,%i0
	add %i0,%o0,%i0
L115:
	ret
	restore
