]>
Commit | Line | Data |
---|---|---|
fe4da5cc | 1 | * |
2 | * $Id$ | |
3 | * | |
4 | * $Log$ | |
5 | * Revision 1.1.1.1 1996/02/15 17:50:07 mclareni | |
6 | * Kernlib | |
7 | * | |
8 | * | |
9 | #include "kerngen/pilot.h" | |
10 | @PROCESS AUTODBL(NONE) | |
11 | SUBROUTINE UPACK(A,B,NDIM) | |
12 | * | |
13 | * Unpack 32 bit words to 64 bit words padding rightmost significant | |
14 | * bit with 0. Should work whatever A and B adresses provided. | |
15 | * MR/IBM, 8-9-1993 | |
16 | * | |
17 | INTEGER A(2*NDIM),B(2*NDIM) | |
18 | * | |
19 | IADA = LOCB(A) | |
20 | IADB = LOCB(B) | |
21 | NS = ISHFT (LOCB(A)-LOCB(B),-2) | |
22 | ||
23 | DO I=1,NS | |
24 | IX2 = I | |
25 | IX1 = 2*I -1 | |
26 | B(IX1) = A(IX2) | |
27 | ENDDO | |
28 | ||
29 | DO I=NDIM,NS+1,-1 | |
30 | IX1 = I | |
31 | IX2 = 2*I -1 | |
32 | B(IX2) = A(IX1) | |
33 | ENDDO | |
34 | ||
35 | DO I=2,2*NDIM,2 | |
36 | B(I) = 0 | |
37 | ENDDO | |
38 | ||
39 | END |