]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MINICERN/packlib/kernlib/kerngen/tcgens/wntgs/iucomh.F
Bugfix in AliPoints2Memory
[u/mrichter/AliRoot.git] / MINICERN / packlib / kernlib / kerngen / tcgens / wntgs / iucomh.F
CommitLineData
fe4da5cc 1*
2* $Id$
3*
4* $Log$
5* Revision 1.2 1997/09/02 14:27:05 mclareni
6* WINNT correction
7*
8* Revision 1.1 1997/02/04 17:36:29 mclareni
9* Merge Winnt and 97a versions
10*
11* Revision 1.1.1.1 1996/02/15 17:50:24 mclareni
12* Kernlib
13*
14*
15 FUNCTION IUCOMH (ISTR1, ISTR2, NCH)
16C
17C CERN PROGLIB# IUCOMH .VERSION KERNDOS 1.00 920624
18C ORIG. FCA+JZ, 20/02/90
19C
20C Compare the two Hollerith strings of NCH bytes length and return
21C -1 if STRING1 < STRING2
22C 0 =
23C +1 >
24C which is determined by the first non-identical character.
25C
26 DIMENSION ISTR1(9), ISTR2(9)
27C
28 NDO = NCH
29 IF (NDO.LE.0) GO TO 30
30 NWD = (NDO-1)/4 + 1
31
32 DO 29 JW=1,NWD
33 IWD1 = ISTR1(JW)
34 IWD2 = ISTR2(JW)
35 NL = MIN(NDO,4)
36 IF (IWD1. NE. IWD2) THEN
37
38 DO 28 J=1,NL
39#ifndef CERNLIB_QF2C
40 ICHAR1 = IAND (IWD1,255)
41 ICHAR2 = IAND (IWD2,255)
42#else
43 ICHAR1 = AND (IWD1,255)
44 ICHAR2 = AND (IWD2,255)
45#endif
46 IF (ICHAR1-ICHAR2) 32, 26, 31
47#ifndef CERNLIB_QF2C
48 26 IWD1 = ISHFT (IWD1,-8)
49 28 IWD2 = ISHFT (IWD2,-8)
50#else
51 26 IWD1 = rshift (IWD1,8)
52 28 IWD2 = rshift (IWD2,8)
53#endif
54 END IF
55 29 NDO = NDO - 4
56
57 30 IUCOMH = 0
58 RETURN
59
60 31 IUCOMH = 1
61 RETURN
62 32 IUCOMH = -1
63 RETURN
64 END