4 char b1
[23] ="0123456789abcdefghijklm";
5 char b2
[23] ="mlkjihgfedcba9876543210";
6 char b3
[23] ="mmmmmmmmmmmmmmmmmmmmmmm";
7 char b4
[23] ="00000000000000000000000";
11 static int clc(char *a1
,char *a2
, int l
)
15 asm volatile( "larl 1, 1f\n"
18 "1: clc 0(1,%1),0(%2)\n"
22 :"a" (a1
), "a" (a2
), "a" (l
): "1", "cc");
27 void testrun(char *a1
, char *a2
, int l
)
32 printf("%d bytes:%d\n",l
, cc
);
36 void multiplex(int l
, long offset1
, long offset2
)
38 testrun(b1
+ offset1
, b1
+ offset2
, l
);
39 testrun(b1
+ offset1
, b2
+ offset2
, l
);
40 testrun(b1
+ offset1
, b3
+ offset2
, l
);
41 testrun(b1
+ offset1
, b4
+ offset2
, l
);
42 testrun(b2
+ offset1
, b2
+ offset2
, l
);
43 testrun(b2
+ offset1
, b3
+ offset2
, l
);
44 testrun(b2
+ offset1
, b4
+ offset2
, l
);
45 testrun(b3
+ offset1
, b3
+ offset2
, l
);
46 testrun(b3
+ offset1
, b4
+ offset2
, l
);
47 testrun(b4
+ offset1
, b4
+ offset2
, l
);
67 testrun(longbuf1
, longbuf2
, 255);
69 testrun(longbuf1
, longbuf2
, 255);
71 testrun(longbuf1
, longbuf2
, 255);