.ad 8
.bm 8
.fm 4
.bt $Copyright (c) 1994-2004 SAP AG$$Page %$
.tm 12
.hm 6
.hs 3
.tt 1 $SQL$Project Distributed Database System$ven76a$
.tt 2 $$$
.tt 3 $$                                       $2001-02-01$
***********************************************************
.nf

.nf


    ========== licence begin  GPL
    Copyright (c) 1994-2004 SAP AG

    This program 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.

    This program 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 this program; if not, write to the Free Software
    Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
    ========== licence end

.fo


.fo
.nf
.sp
Module  :       lock
=========
.sp
Purpose :       interlock, clearlock
.CM *-END-* purpose -------------------------------------
.sp
.cp 3
Define  :
 
.CM *-END-* define --------------------------------------
.sp;.cp 3
Use     :
 
.CM *-END-* use -----------------------------------------
.sp;.cp 3
Synonym :
 
.CM *-END-* synonym -------------------------------------
.sp;.cp 3
Author  :
.sp
.cp 3
Created :
.sp
.cp 3
Version : 1994-05-17
.sp
.cp 3
Release :      Date : 2001-02-01
.sp
***********************************************************
.sp
.cp 10
.fo
.oc _/1
Specification:
 
.CM *-END-* specification -------------------------------
.sp 2
***********************************************************
.sp
.cp 10
.fo
.oc _/1
Description:
 
.CM *-END-* description ---------------------------------
.sp 2
***********************************************************
.sp
.cp 10
.nf
.oc _/1
Structure:
 
.CM *-END-* structure -----------------------------------
.sp 2
**********************************************************
.sp
.cp 10
.nf
.oc _/1
.CM -lll-
Code    :
&undef	PRETTY

&if  $MACH in [ I386 ]
	.file  "ven76a.s"
	.text

#-----------------------------------------------------------------------------
#	struct TASK_TYPE * e76_mem_sync ( struct TASK_TYPE * task )
#	Prevent instruction reordering by calling a function.
#-----------------------------------------------------------------------------

	.globl  e76_mem_sync
	.align  4
e76_mem_sync:
    lock
    movl (%esp),%eax
	ret	
& endif

&if  $MACH = ALPHA and $OSSPEC = OSF1
	.file	2 "ven76a.s"
	.text	
	.align	4
/* 
 * struct TASK_TYPE * e76_mem_sync ( struct TASK_TYPE * task )
 * call mb, return task
 */
	.globl  e76_mem_sync
        .ent    e76_mem_sync
e76_mem_sync:
        ldgp    $gp, 0($27)	/* global ptr gets addr of this function */
        .frame  $sp, 0, $26, 0
        .prologue       1
        mb			/* memory barrier */
        bis     $16, $16, $0	/* arg1 to return reg */
        mb			/* memory barrier */
        ret     $31, ($26), 1	/* return task */
        .end    e76_mem_sync
&endif

.CM *-END-* code ----------------------------------------
.sp 2 
***********************************************************
*-PRETTY-*  statements    :
*-PRETTY-*  lines of code :
*-PRETTY-*  lines in file :
.pa 
