202 |
C WRITE(*,*) ' eBl = ', ebl |
C WRITE(*,*) ' eBl = ', ebl |
203 |
C STOP ' S/R EXCH_RECV_GET_X: spinCount .GT. _EXCH_SPIN_LIMIT' |
C STOP ' S/R EXCH_RECV_GET_X: spinCount .GT. _EXCH_SPIN_LIMIT' |
204 |
C ENDIF |
C ENDIF |
205 |
IF ( westRecvAck(eBl,bi,bj) .EQ. 0. ) GOTO 10 |
IF ( westRecvAck(eBl,bi,bj) .EQ. 0 ) GOTO 10 |
206 |
IF ( eastRecvAck(eBl,bi,bj) .EQ. 0. ) GOTO 10 |
IF ( eastRecvAck(eBl,bi,bj) .EQ. 0 ) GOTO 10 |
207 |
C Clear outstanding requests |
C Clear outstanding requests |
208 |
westRecvAck(eBl,bi,bj) = 0. |
westRecvAck(eBl,bi,bj) = 0 |
209 |
eastRecvAck(eBl,bi,bj) = 0. |
eastRecvAck(eBl,bi,bj) = 0 |
210 |
|
|
211 |
IF ( exchNReqsX(1,bi,bj) .GT. 0 ) THEN |
IF ( exchNReqsX(1,bi,bj) .GT. 0 ) THEN |
212 |
#ifdef ALLOW_USE_MPI |
#ifdef ALLOW_USE_MPI |
361 |
ENDDO |
ENDDO |
362 |
ENDDO |
ENDDO |
363 |
|
|
364 |
|
_BARRIER |
365 |
IF ( doingSingleThreadedComms ) THEN |
IF ( doingSingleThreadedComms ) THEN |
366 |
C Restore saved settings that were stored to allow |
C Restore saved settings that were stored to allow |
367 |
C single thred comms. |
C single thred comms. |
|
_BARRIER |
|
368 |
_BEGIN_MASTER(myThid) |
_BEGIN_MASTER(myThid) |
369 |
DO I=1,nThreads |
DO I=1,nThreads |
370 |
myBxLo(I) = myBxLoSave(I) |
myBxLo(I) = myBxLoSave(I) |
373 |
myByHi(I) = myByHiSave(I) |
myByHi(I) = myByHiSave(I) |
374 |
ENDDO |
ENDDO |
375 |
_END_MASTER(myThid) |
_END_MASTER(myThid) |
|
_BARRIER |
|
376 |
ENDIF |
ENDIF |
377 |
|
_BARRIER |
378 |
|
|
379 |
RETURN |
RETURN |
380 |
END |
END |