compare_exceptions.sh.incl revision 1223:67395f7ca2db
1#!/bin/bash
2#
3# Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
4# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5#
6# This code is free software; you can redistribute it and/or modify it
7# under the terms of the GNU General Public License version 2 only, as
8# published by the Free Software Foundation.
9#
10# This code is distributed in the hope that it will be useful, but WITHOUT
11# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
13# version 2 for more details (a copy is included in the LICENSE file that
14# accompanied this code).
15#
16# You should have received a copy of the GNU General Public License version
17# 2 along with this work; if not, write to the Free Software Foundation,
18# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
19#
20# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
21# or visit www.oracle.com if you need additional information or have any
22# questions.
23#
24
25# This script is not to be run as stand-alone, it should be included from
26# compare.sh.
27
28##########################################################################################
29# Check that we are run via inclusion from compare.sh and not as stand-alone.
30if [ -z "$COMPARE_EXCEPTIONS_INCLUDE" ]; then
31    echo "Error: This script should not be run as stand-alone. It is included by compare.sh"
32    exit 1
33fi
34
35##########################################################################################
36# Diff exceptions
37
38if [ "$OPENJDK_TARGET_OS" = "linux" ] && [ "$OPENJDK_TARGET_CPU" = "x86" ]; then
39
40STRIP_BEFORE_COMPARE="
41./demo/jvmti/compiledMethodLoad/lib/libcompiledMethodLoad.so
42./demo/jvmti/gctest/lib/libgctest.so
43./demo/jvmti/heapTracker/lib/libheapTracker.so
44./demo/jvmti/heapViewer/lib/libheapViewer.so
45./demo/jvmti/hprof/lib/libhprof.so
46./demo/jvmti/minst/lib/libminst.so
47./demo/jvmti/mtrace/lib/libmtrace.so
48./demo/jvmti/versionCheck/lib/libversionCheck.so
49./demo/jvmti/waiters/lib/libwaiters.so
50"
51
52ACCEPTED_BIN_DIFF="
53./demo/jvmti/compiledMethodLoad/lib/libcompiledMethodLoad.so
54./demo/jvmti/gctest/lib/libgctest.so
55./demo/jvmti/heapTracker/lib/libheapTracker.so
56./demo/jvmti/heapViewer/lib/libheapViewer.so
57./demo/jvmti/hprof/lib/libhprof.so
58./demo/jvmti/minst/lib/libminst.so
59./demo/jvmti/mtrace/lib/libmtrace.so
60./demo/jvmti/versionCheck/lib/libversionCheck.so
61./demo/jvmti/waiters/lib/libwaiters.so
62./jre/lib/i386/client/libjvm.so
63./jre/lib/i386/libattach.so
64./jre/lib/i386/libdt_socket.so
65./jre/lib/i386/libhprof.so
66./jre/lib/i386/libinstrument.so
67./jre/lib/i386/libjava_crw_demo.so
68./jre/lib/i386/libjsdt.so
69./jre/lib/i386/libmanagement.so
70./jre/lib/i386/libnpt.so
71./jre/lib/i386/libverify.so
72./jre/lib/i386/server/libjvm.so
73./bin/appletviewer
74./bin/idlj
75./bin/jar
76./bin/jarsigner
77./bin/java
78./bin/javac
79./bin/javadoc
80./bin/javah
81./bin/javap
82./bin/jdeps
83./bin/jcmd
84./bin/jconsole
85./bin/jdb
86./bin/jhat
87./bin/jimage
88./bin/jinfo
89./bin/jjs
90./bin/jmap
91./bin/jps
92./bin/jrunscript
93./bin/jsadebugd
94./bin/jstack
95./bin/jstat
96./bin/jstatd
97./bin/keytool
98./bin/native2ascii
99./bin/orbd
100./bin/pack200
101./bin/policytool
102./bin/rmic
103./bin/rmid
104./bin/rmiregistry
105./bin/schemagen
106./bin/serialver
107./bin/servertool
108./bin/tnameserv
109./bin/wsgen
110./bin/wsimport
111./bin/xjc
112./jre/bin/java
113./jre/bin/keytool
114./jre/bin/orbd
115./jre/bin/pack200
116./jre/bin/policytool
117./jre/bin/rmid
118./jre/bin/rmiregistry
119./jre/bin/servertool
120./jre/bin/tnameserv
121"
122
123fi
124
125if [ "$OPENJDK_TARGET_OS" = "linux" ] && [ "$OPENJDK_TARGET_CPU" = "x86_64" ]; then
126
127STRIP_BEFORE_COMPARE="
128./demo/jvmti/compiledMethodLoad/lib/libcompiledMethodLoad.so
129./demo/jvmti/gctest/lib/libgctest.so
130./demo/jvmti/heapTracker/lib/libheapTracker.so
131./demo/jvmti/heapViewer/lib/libheapViewer.so
132./demo/jvmti/hprof/lib/libhprof.so
133./demo/jvmti/minst/lib/libminst.so
134./demo/jvmti/mtrace/lib/libmtrace.so
135./demo/jvmti/versionCheck/lib/libversionCheck.so
136./demo/jvmti/waiters/lib/libwaiters.so
137"
138
139ACCEPTED_BIN_DIFF="
140./demo/jvmti/compiledMethodLoad/lib/libcompiledMethodLoad.so
141./demo/jvmti/gctest/lib/libgctest.so
142./demo/jvmti/heapTracker/lib/libheapTracker.so
143./demo/jvmti/heapViewer/lib/libheapViewer.so
144./demo/jvmti/hprof/lib/libhprof.so
145./demo/jvmti/minst/lib/libminst.so
146./demo/jvmti/mtrace/lib/libmtrace.so
147./demo/jvmti/versionCheck/lib/libversionCheck.so
148./demo/jvmti/waiters/lib/libwaiters.so
149./jre/lib/amd64/libattach.so
150./jre/lib/amd64/libdt_socket.so
151./jre/lib/amd64/libhprof.so
152./jre/lib/amd64/libinstrument.so
153./jre/lib/amd64/libjava_crw_demo.so
154./jre/lib/amd64/libjsdt.so
155./jre/lib/amd64/libjsig.so
156./jre/lib/amd64/libmanagement.so
157./jre/lib/amd64/libnpt.so
158./jre/lib/amd64/libsaproc.so
159./jre/lib/amd64/libverify.so
160./jre/lib/amd64/server/libjsig.so
161./jre/lib/amd64/server/libjvm.so
162./bin/appletviewer
163./bin/idlj
164./bin/jar
165./bin/jarsigner
166./bin/java
167./bin/javac
168./bin/javadoc
169./bin/javah
170./bin/javap
171./bin/jdeps
172./bin/jcmd
173./bin/jconsole
174./bin/jdb
175./bin/jhat
176./bin/jimage
177./bin/jinfo
178./bin/jjs
179./bin/jmap
180./bin/jps
181./bin/jrunscript
182./bin/jsadebugd
183./bin/jstack
184./bin/jstat
185./bin/jstatd
186./bin/keytool
187./bin/native2ascii
188./bin/orbd
189./bin/pack200
190./bin/policytool
191./bin/rmic
192./bin/rmid
193./bin/rmiregistry
194./bin/schemagen
195./bin/serialver
196./bin/servertool
197./bin/tnameserv
198./bin/wsgen
199./bin/wsimport
200./bin/xjc
201./jre/bin/java
202./jre/bin/keytool
203./jre/bin/orbd
204./jre/bin/pack200
205./jre/bin/policytool
206./jre/bin/rmid
207./jre/bin/rmiregistry
208./jre/bin/servertool
209./jre/bin/tnameserv
210"
211
212fi
213
214if [ "$OPENJDK_TARGET_OS" = "solaris" ] && [ "$OPENJDK_TARGET_CPU" = "x86" ]; then
215
216STRIP_BEFORE_COMPARE="
217./demo/jni/Poller/lib/libPoller.so
218./demo/jvmti/compiledMethodLoad/lib/libcompiledMethodLoad.so
219./demo/jvmti/gctest/lib/libgctest.so
220./demo/jvmti/heapTracker/lib/libheapTracker.so
221./demo/jvmti/heapViewer/lib/libheapViewer.so
222./demo/jvmti/hprof/lib/libhprof.so
223./demo/jvmti/minst/lib/libminst.so
224./demo/jvmti/mtrace/lib/libmtrace.so
225./demo/jvmti/versionCheck/lib/libversionCheck.so
226./demo/jvmti/waiters/lib/libwaiters.so
227./jre/lib/i386/jexec
228"
229
230SORT_SYMBOLS="
231./jre/lib/i386/client/libjvm.so
232./jre/lib/i386/libsaproc.so
233./jre/lib/i386/server/libjvm.so
234"
235
236SKIP_BIN_DIFF="true"
237
238ACCEPTED_SMALL_SIZE_DIFF="
239./demo/jni/Poller/lib/libPoller.so
240./demo/jvmti/compiledMethodLoad/lib/libcompiledMethodLoad.so
241./demo/jvmti/gctest/lib/libgctest.so
242./demo/jvmti/heapTracker/lib/libheapTracker.so
243./demo/jvmti/heapViewer/lib/libheapViewer.so
244./demo/jvmti/hprof/lib/libhprof.so
245./demo/jvmti/minst/lib/libminst.so
246./demo/jvmti/mtrace/lib/libmtrace.so
247./demo/jvmti/versionCheck/lib/libversionCheck.so
248./demo/jvmti/waiters/lib/libwaiters.so
249./jre/lib/i386/client/libjvm.so
250./jre/lib/i386/jli/libjli.so
251./jre/lib/i386/libJdbcOdbc.so
252./jre/lib/i386/libattach.so
253./jre/lib/i386/libawt.so
254./jre/lib/i386/libawt_headless.so
255./jre/lib/i386/libawt_xawt.so
256./jre/lib/i386/libdcpr.so
257./jre/lib/i386/libdt_socket.so
258./jre/lib/i386/libfontmanager.so
259./jre/lib/i386/libhprof.so
260./jre/lib/i386/libinstrument.so
261./jre/lib/i386/libj2gss.so
262./jre/lib/i386/libj2pcsc.so
263./jre/lib/i386/libj2pkcs11.so
264./jre/lib/i386/libj2ucrypto.so
265./jre/lib/i386/libjaas_unix.so
266./jre/lib/i386/libjava.so
267./jre/lib/i386/libjava_crw_demo.so
268./jre/lib/i386/libjawt.so
269./jre/lib/i386/libjdwp.so
270./jre/lib/i386/libjfr.so
271./jre/lib/i386/libjpeg.so
272./jre/lib/i386/libjsdt.so
273./jre/lib/i386/libjsound.so
274./jre/lib/i386/libkcms.so
275./jre/lib/i386/liblcms.so
276./jre/lib/i386/libmanagement.so
277./jre/lib/i386/libmlib_image.so
278./jre/lib/i386/libnet.so
279./jre/lib/i386/libnio.so
280./jre/lib/i386/libnpt.so
281./jre/lib/i386/libsctp.so
282./jre/lib/i386/libsplashscreen.so
283./jre/lib/i386/libsunec.so
284./jre/lib/i386/libsunwjdga.so
285./jre/lib/i386/libt2k.so
286./jre/lib/i386/libunpack.so
287./jre/lib/i386/libverify.so
288./jre/lib/i386/libzip.so
289./jre/lib/i386/libdeploy.so
290./jre/lib/i386/libjavaplugin.so
291./jre/lib/i386/libjavaplugin_jni.so
292./jre/lib/i386/libjavaplugin_nscp.so
293./jre/lib/i386/libjavaplugin_oji.so
294./jre/lib/i386/libnpjp2.so
295./jre/plugin/i386/ns4/libjavaplugin.so
296./jre/plugin/i386/ns7/libjavaplugin_oji.so
297./jre/lib/i386/server/libjvm.so
298./jre/lib/i386/client/64/libjvm_db.so
299./jre/lib/i386/client/64/libjvm_dtrace.so
300./jre/lib/i386/client/libjvm_db.so
301./jre/lib/i386/client/libjvm_dtrace.so
302./jre/lib/i386/server/64/libjvm_db.so
303./jre/lib/i386/server/64/libjvm_dtrace.so
304./jre/lib/i386/server/libjvm_db.so
305./jre/lib/i386/server/libjvm_dtrace.so
306./bin/appletviewer
307./bin/idlj
308./bin/jar
309./bin/jarsigner
310./bin/java
311./bin/javac
312./bin/javadoc
313./bin/javah
314./bin/javap
315./bin/jdeps
316./bin/javaws
317./bin/jcmd
318./bin/jconsole
319./bin/jdb
320./bin/jhat
321./bin/jimage
322./bin/jinfo
323./bin/jjs
324./bin/jmap
325./bin/jps
326./bin/jrunscript
327./bin/jsadebugd
328./bin/jstack
329./bin/jstat
330./bin/jstatd
331./bin/keytool
332./bin/native2ascii
333./bin/orbd
334./bin/pack200
335./bin/policytool
336./bin/rmic
337./bin/rmid
338./bin/rmiregistry
339./bin/schemagen
340./bin/serialver
341./bin/servertool
342./bin/tnameserv
343./bin/unpack200
344./bin/wsgen
345./bin/wsimport
346./bin/xjc
347./jre/bin/java
348./jre/bin/java_vm
349./jre/bin/javaws
350./jre/bin/keytool
351./jre/bin/orbd
352./jre/bin/pack200
353./jre/bin/policytool
354./jre/bin/rmid
355./jre/bin/rmiregistry
356./jre/bin/servertool
357./jre/bin/tnameserv
358./jre/bin/unpack200
359./jre/lib/i386/jexec
360"
361
362SKIP_FULLDUMP_DIFF="true"
363
364# Filter random C++ symbol strings.
365# Some numbers differ randomly.
366# Can't use space in these expressions as the shell will mess with them.
367DIS_DIFF_FILTER="$SED -e s/\.[a-zA-Z0-9_\$]\{15,15\}/<SYM>/g -e s/\([0-9a-f][0-9a-f].\)\{2,8\}[0-9a-f][0-9a-f]/<NUMS>/g -e s/\(0x\)[0-9a-f]*\([,(>]\)/\1<HEX>\2/g -e s/\(0x\)[0-9a-f]*$/\1<HEX>/g -e s/\(\#.\)[0-9a-f]*\(.<\)/\1<HEX>\2/g -e s/[\.A-Za-z0-9%]\{16,16\}$/<BIN>/g"
368
369fi
370
371if [ "$OPENJDK_TARGET_OS" = "solaris" ] && [ "$OPENJDK_TARGET_CPU" = "x86_64" ]; then
372
373STRIP_BEFORE_COMPARE="
374./demo/jni/Poller/lib/amd64/libPoller.so
375./demo/jvmti/compiledMethodLoad/lib/amd64/libcompiledMethodLoad.so
376./demo/jvmti/gctest/lib/amd64/libgctest.so
377./demo/jvmti/heapTracker/lib/amd64/libheapTracker.so
378./demo/jvmti/heapViewer/lib/amd64/libheapViewer.so
379./demo/jvmti/hprof/lib/amd64/libhprof.so
380./demo/jvmti/minst/lib/amd64/libminst.so
381./demo/jvmti/mtrace/lib/amd64/libmtrace.so
382./demo/jvmti/versionCheck/lib/amd64/libversionCheck.so
383./demo/jvmti/waiters/lib/amd64/libwaiters.so
384"
385
386SORT_SYMBOLS="
387./jre/lib/amd64/server/libjvm.so
388./jre/lib/amd64/libsaproc.so
389"
390
391SKIP_BIN_DIFF="true"
392
393ACCEPTED_SMALL_SIZE_DIFF="
394./demo/jni/Poller/lib/amd64/libPoller.so
395./demo/jvmti/compiledMethodLoad/lib/amd64/libcompiledMethodLoad.so
396./demo/jvmti/gctest/lib/amd64/libgctest.so
397./demo/jvmti/heapTracker/lib/amd64/libheapTracker.so
398./demo/jvmti/heapViewer/lib/amd64/libheapViewer.so
399./demo/jvmti/hprof/lib/amd64/libhprof.so
400./demo/jvmti/minst/lib/amd64/libminst.so
401./demo/jvmti/mtrace/lib/amd64/libmtrace.so
402./demo/jvmti/versionCheck/lib/amd64/libversionCheck.so
403./demo/jvmti/waiters/lib/amd64/libwaiters.so
404./jre/lib/amd64/jli/libjli.so
405./jre/lib/amd64/libJdbcOdbc.so
406./jre/lib/amd64/libattach.so
407./jre/lib/amd64/libawt.so
408./jre/lib/amd64/libawt_headless.so
409./jre/lib/amd64/libawt_xawt.so
410./jre/lib/amd64/libdcpr.so
411./jre/lib/amd64/libdt_socket.so
412./jre/lib/amd64/libfontmanager.so
413./jre/lib/amd64/libhprof.so
414./jre/lib/amd64/libinstrument.so
415./jre/lib/amd64/libj2gss.so
416./jre/lib/amd64/libj2pcsc.so
417./jre/lib/amd64/libj2pkcs11.so
418./jre/lib/amd64/libj2ucrypto.so
419./jre/lib/amd64/libjaas_unix.so
420./jre/lib/amd64/libjava.so
421./jre/lib/amd64/libjava_crw_demo.so
422./jre/lib/amd64/libjawt.so
423./jre/lib/amd64/libjdwp.so
424./jre/lib/amd64/libjfr.so
425./jre/lib/amd64/libjpeg.so
426./jre/lib/amd64/libjsdt.so
427./jre/lib/amd64/libjsound.so
428./jre/lib/amd64/libkcms.so
429./jre/lib/amd64/liblcms.so
430./jre/lib/amd64/libmanagement.so
431./jre/lib/amd64/libmlib_image.so
432./jre/lib/amd64/libnet.so
433./jre/lib/amd64/libnio.so
434./jre/lib/amd64/libnpt.so
435./jre/lib/amd64/libsctp.so
436./jre/lib/amd64/libsplashscreen.so
437./jre/lib/amd64/libsunec.so
438./jre/lib/amd64/libsunwjdga.so
439./jre/lib/amd64/libt2k.so
440./jre/lib/amd64/libunpack.so
441./jre/lib/amd64/libverify.so
442./jre/lib/amd64/libzip.so
443./jre/lib/amd64/server/64/libjvm_db.so
444./jre/lib/amd64/server/64/libjvm_dtrace.so
445./jre/lib/amd64/server/libjvm.so
446./jre/lib/amd64/server/libjvm_db.so
447./jre/lib/amd64/server/libjvm_dtrace.so
448./bin/amd64/appletviewer
449./bin/amd64/idlj
450./bin/amd64/jar
451./bin/amd64/jarsigner
452./bin/amd64/java
453./bin/amd64/javac
454./bin/amd64/javadoc
455./bin/amd64/javah
456./bin/amd64/javap
457./bin/amd64/jdeps
458./bin/amd64/jcmd
459./bin/amd64/jconsole
460./bin/amd64/jdb
461./bin/amd64/jhat
462./bin/amd64/jimage
463./bin/amd64/jinfo
464./bin/amd64/jjs
465./bin/amd64/jmap
466./bin/amd64/jps
467./bin/amd64/jrunscript
468./bin/amd64/jsadebugd
469./bin/amd64/jstack
470./bin/amd64/jstat
471./bin/amd64/jstatd
472./bin/amd64/keytool
473./bin/amd64/native2ascii
474./bin/amd64/orbd
475./bin/amd64/pack200
476./bin/amd64/policytool
477./bin/amd64/rmic
478./bin/amd64/rmid
479./bin/amd64/rmiregistry
480./bin/amd64/schemagen
481./bin/amd64/serialver
482./bin/amd64/servertool
483./bin/amd64/tnameserv
484./bin/amd64/unpack200
485./bin/amd64/wsgen
486./bin/amd64/wsimport
487./bin/amd64/xjc
488./jre/bin/amd64/java
489./jre/bin/amd64/keytool
490./jre/bin/amd64/orbd
491./jre/bin/amd64/pack200
492./jre/bin/amd64/policytool
493./jre/bin/amd64/rmid
494./jre/bin/amd64/rmiregistry
495./jre/bin/amd64/servertool
496./jre/bin/amd64/tnameserv
497./jre/bin/amd64/unpack200
498./jre/lib/amd64/jexec
499"
500
501SKIP_FULLDUMP_DIFF="true"
502
503# Filter random C++ symbol strings.
504# Some numbers differ randomly.
505# Can't use space in these expressions as the shell will mess with them.
506DIS_DIFF_FILTER="$SED -e s/\.[a-zA-Z0-9_\$]\{15,15\}/<SYM>/g -e s/\([0-9a-f][0-9a-f].\)\{2,8\}[0-9a-f][0-9a-f]/<NUMS>/g -e s/\(0x\)[0-9a-f]*\([,(>]\)/\1<HEX>\2/g -e s/\(0x\)[0-9a-f]*$/\1<HEX>/g -e s/\(\#.\)[0-9a-f]*\(.<\)/\1<HEX>\2/g -e s/[\.A-Za-z0-9%]\{16,16\}$/<BIN>/g"
507
508fi
509
510if [ "$OPENJDK_TARGET_OS" = "solaris" ] && [ "$OPENJDK_TARGET_CPU" = "sparc" ]; then
511
512STRIP_BEFORE_COMPARE="
513./demo/jni/Poller/lib/libPoller.so
514./demo/jvmti/compiledMethodLoad/lib/libcompiledMethodLoad.so
515./demo/jvmti/gctest/lib/libgctest.so
516./demo/jvmti/heapTracker/lib/libheapTracker.so
517./demo/jvmti/heapViewer/lib/libheapViewer.so
518./demo/jvmti/hprof/lib/libhprof.so
519./demo/jvmti/minst/lib/libminst.so
520./demo/jvmti/mtrace/lib/libmtrace.so
521./demo/jvmti/versionCheck/lib/libversionCheck.so
522./demo/jvmti/waiters/lib/libwaiters.so
523./jre/lib/sparc/jexec
524"
525
526SORT_SYMBOLS="
527./demo/jvmti/waiters/lib/libwaiters.so
528./jre/lib/sparc/client/64/libjvm_db.so
529./jre/lib/sparc/client/64/libjvm_dtrace.so
530./jre/lib/sparc/client/libjsig.so
531./jre/lib/sparc/client/libjvm.so
532./jre/lib/sparc/client/libjvm_db.so
533./jre/lib/sparc/client/libjvm_dtrace.so
534./jre/lib/sparc/libjsig.so
535./jre/lib/sparc/libsaproc.so
536./jre/lib/sparc/server/64/libjvm_db.so
537./jre/lib/sparc/server/64/libjvm_dtrace.so
538./jre/lib/sparc/server/libjsig.so
539./jre/lib/sparc/server/libjvm.so
540./jre/lib/sparc/server/libjvm_db.so
541./jre/lib/sparc/server/libjvm_dtrace.so
542"
543
544SKIP_BIN_DIFF="true"
545
546ACCEPTED_SMALL_SIZE_DIFF="
547./demo/jni/Poller/lib/libPoller.so
548./demo/jvmti/compiledMethodLoad/lib/libcompiledMethodLoad.so
549./demo/jvmti/gctest/lib/libgctest.so
550./demo/jvmti/heapTracker/lib/libheapTracker.so
551./demo/jvmti/heapViewer/lib/libheapViewer.so
552./demo/jvmti/hprof/lib/libhprof.so
553./demo/jvmti/minst/lib/libminst.so
554./demo/jvmti/mtrace/lib/libmtrace.so
555./demo/jvmti/versionCheck/lib/libversionCheck.so
556./demo/jvmti/waiters/lib/libwaiters.so
557./jre/lib/sparc/client/libjvm.so
558./jre/lib/sparc/jli/libjli.so
559./jre/lib/sparc/libJdbcOdbc.so
560./jre/lib/sparc/libattach.so
561./jre/lib/sparc/libawt.so
562./jre/lib/sparc/libawt_headless.so
563./jre/lib/sparc/libawt_xawt.so
564./jre/lib/sparc/libdcpr.so
565./jre/lib/sparc/libdt_socket.so
566./jre/lib/sparc/libfontmanager.so
567./jre/lib/sparc/libhprof.so
568./jre/lib/sparc/libinstrument.so
569./jre/lib/sparc/libj2gss.so
570./jre/lib/sparc/libj2pcsc.so
571./jre/lib/sparc/libj2pkcs11.so
572./jre/lib/sparc/libj2ucrypto.so
573./jre/lib/sparc/libjaas_unix.so
574./jre/lib/sparc/libjava.so
575./jre/lib/sparc/libjava_crw_demo.so
576./jre/lib/sparc/libjawt.so
577./jre/lib/sparc/libjdwp.so
578./jre/lib/sparc/libjfr.so
579./jre/lib/sparc/libjpeg.so
580./jre/lib/sparc/libjsdt.so
581./jre/lib/sparc/libjsound.so
582./jre/lib/sparc/libkcms.so
583./jre/lib/sparc/liblcms.so
584./jre/lib/sparc/libmanagement.so
585./jre/lib/sparc/libmlib_image.so
586./jre/lib/sparc/libmlib_image_v.so
587./jre/lib/sparc/libnet.so
588./jre/lib/sparc/libnio.so
589./jre/lib/sparc/libnpt.so
590./jre/lib/sparc/libsctp.so
591./jre/lib/sparc/libsplashscreen.so
592./jre/lib/sparc/libsunec.so
593./jre/lib/sparc/libsunwjdga.so
594./jre/lib/sparc/libt2k.so
595./jre/lib/sparc/libunpack.so
596./jre/lib/sparc/libverify.so
597./jre/lib/sparc/libzip.so
598./jre/lib/sparc/libdeploy.so
599./jre/lib/sparc/libjavaplugin.so
600./jre/lib/sparc/libjavaplugin_jni.so
601./jre/lib/sparc/libjavaplugin_nscp.so
602./jre/lib/sparc/libjavaplugin_oji.so
603./jre/lib/sparc/libnpjp2.so
604./jre/plugin/sparc/ns4/libjavaplugin.so
605./jre/plugin/sparc/ns7/libjavaplugin_oji.so
606./jre/lib/sparc/server/libjvm.so
607./bin/appletviewer
608./bin/idlj
609./bin/jar
610./bin/jarsigner
611./bin/java
612./bin/javac
613./bin/javadoc
614./bin/javah
615./bin/javap
616./bin/jdeps
617./bin/javaws
618./bin/jcmd
619./bin/jconsole
620./bin/jdb
621./bin/jhat
622./bin/jimage
623./bin/jinfo
624./bin/jjs
625./bin/jmap
626./bin/jps
627./bin/jrunscript
628./bin/jsadebugd
629./bin/jstack
630./bin/jstat
631./bin/jstatd
632./bin/keytool
633./bin/native2ascii
634./bin/orbd
635./bin/pack200
636./bin/policytool
637./bin/rmic
638./bin/rmid
639./bin/rmiregistry
640./bin/schemagen
641./bin/serialver
642./bin/servertool
643./bin/tnameserv
644./bin/unpack200
645./bin/wsgen
646./bin/wsimport
647./bin/xjc
648./jre/bin/java
649./jre/bin/java_vm
650./jre/bin/javaws
651./jre/bin/keytool
652./jre/bin/orbd
653./jre/bin/pack200
654./jre/bin/policytool
655./jre/bin/rmid
656./jre/bin/rmiregistry
657./jre/bin/servertool
658./jre/bin/tnameserv
659./jre/bin/unpack200
660./jre/lib/sparc/jexec
661"
662
663# Filter random C++ symbol strings.
664# Some numbers differ randomly.
665DIS_DIFF_FILTER="$SED -e s/\$[a-zA-Z0-9_\$]\{15,15\}/<SYM>/g -e s/\([0-9a-f][0-9a-f].[0-9a-f][0-9a-f].[0-9a-f][0-9a-f].\)[0-9a-f][0-9a-f]/\1<NUM>/g -e s/\(%g1,.0x\)[0-9a-f]*\(,.%g1\)/\1<HEX>\2/g -e s/\(!.\)[0-9a-f]*\(.<SUNWprivate_1.1+0x\)[0-9a-f]*/\1<NUM>\2<HEX>/g"
666
667# Some xor instructions end up with different args in the lib but not in the object files.
668ACCEPTED_DIS_DIFF="
669./demo/jvmti/waiters/lib/libwaiters.so
670"
671
672SKIP_FULLDUMP_DIFF="true"
673
674fi
675
676if [ "$OPENJDK_TARGET_OS" = "solaris" ] && [ "$OPENJDK_TARGET_CPU" = "sparcv9" ]; then
677
678STRIP_BEFORE_COMPARE="
679./demo/jni/Poller/lib/sparcv9/libPoller.so
680./demo/jvmti/compiledMethodLoad/lib/sparcv9/libcompiledMethodLoad.so
681./demo/jvmti/gctest/lib/sparcv9/libgctest.so
682./demo/jvmti/heapTracker/lib/sparcv9/libheapTracker.so
683./demo/jvmti/heapViewer/lib/sparcv9/libheapViewer.so
684./demo/jvmti/hprof/lib/sparcv9/libhprof.so
685./demo/jvmti/minst/lib/sparcv9/libminst.so
686./demo/jvmti/mtrace/lib/sparcv9/libmtrace.so
687./demo/jvmti/versionCheck/lib/sparcv9/libversionCheck.so
688./demo/jvmti/waiters/lib/sparcv9/libwaiters.so
689"
690
691SORT_SYMBOLS="
692./demo/jvmti/waiters/lib/sparcv9/libwaiters.so
693./jre/lib/sparcv9/libjsig.so
694./jre/lib/sparcv9/libsaproc.so
695./jre/lib/sparcv9/server/libjvm.so
696./jre/lib/sparcv9/server/libjvm_dtrace.so
697"
698
699SKIP_BIN_DIFF="true"
700
701ACCEPTED_SMALL_SIZE_DIFF="
702./demo/jni/Poller/lib/sparcv9/libPoller.so
703./demo/jvmti/compiledMethodLoad/lib/sparcv9/libcompiledMethodLoad.so
704./demo/jvmti/gctest/lib/sparcv9/libgctest.so
705./demo/jvmti/heapTracker/lib/sparcv9/libheapTracker.so
706./demo/jvmti/heapViewer/lib/sparcv9/libheapViewer.so
707./demo/jvmti/hprof/lib/sparcv9/libhprof.so
708./demo/jvmti/minst/lib/sparcv9/libminst.so
709./demo/jvmti/mtrace/lib/sparcv9/libmtrace.so
710./demo/jvmti/versionCheck/lib/sparcv9/libversionCheck.so
711./demo/jvmti/waiters/lib/sparcv9/libwaiters.so
712./jre/lib/sparcv9/client/libjvm.so
713./jre/lib/sparcv9/jli/libjli.so
714./jre/lib/sparcv9/libJdbcOdbc.so
715./jre/lib/sparcv9/libattach.so
716./jre/lib/sparcv9/libawt.so
717./jre/lib/sparcv9/libawt_headless.so
718./jre/lib/sparcv9/libawt_xawt.so
719./jre/lib/sparcv9/libdcpr.so
720./jre/lib/sparcv9/libdt_socket.so
721./jre/lib/sparcv9/libfontmanager.so
722./jre/lib/sparcv9/libhprof.so
723./jre/lib/sparcv9/libinstrument.so
724./jre/lib/sparcv9/libj2gss.so
725./jre/lib/sparcv9/libj2pcsc.so
726./jre/lib/sparcv9/libj2pkcs11.so
727./jre/lib/sparcv9/libj2ucrypto.so
728./jre/lib/sparcv9/libjaas_unix.so
729./jre/lib/sparcv9/libjava.so
730./jre/lib/sparcv9/libjava_crw_demo.so
731./jre/lib/sparcv9/libjawt.so
732./jre/lib/sparcv9/libjdwp.so
733./jre/lib/sparcv9/libjfr.so
734./jre/lib/sparcv9/libjpeg.so
735./jre/lib/sparcv9/libjsdt.so
736./jre/lib/sparcv9/libjsound.so
737./jre/lib/sparcv9/libkcms.so
738./jre/lib/sparcv9/liblcms.so
739./jre/lib/sparcv9/libmanagement.so
740./jre/lib/sparcv9/libmlib_image.so
741./jre/lib/sparcv9/libmlib_image_v.so
742./jre/lib/sparcv9/libnet.so
743./jre/lib/sparcv9/libnio.so
744./jre/lib/sparcv9/libnpt.so
745./jre/lib/sparcv9/libsctp.so
746./jre/lib/sparcv9/libsplashscreen.so
747./jre/lib/sparcv9/libsunec.so
748./jre/lib/sparcv9/libsunwjdga.so
749./jre/lib/sparcv9/libt2k.so
750./jre/lib/sparcv9/libunpack.so
751./jre/lib/sparcv9/libverify.so
752./jre/lib/sparcv9/libzip.so
753./jre/lib/sparcv9/server/libjvm.so
754./bin/sparcv9/appletviewer
755./bin/sparcv9/idlj
756./bin/sparcv9/jar
757./bin/sparcv9/jarsigner
758./bin/sparcv9/java
759./bin/sparcv9/javac
760./bin/sparcv9/javadoc
761./bin/sparcv9/javah
762./bin/sparcv9/javap
763./bin/sparcv9/jdeps
764./bin/sparcv9/jcmd
765./bin/sparcv9/jconsole
766./bin/sparcv9/jdb
767./bin/sparcv9/jhat
768./bin/sparcv9/jimage
769./bin/sparcv9/jinfo
770./bin/sparcv9/jjs
771./bin/sparcv9/jmap
772./bin/sparcv9/jps
773./bin/sparcv9/jrunscript
774./bin/sparcv9/jsadebugd
775./bin/sparcv9/jstack
776./bin/sparcv9/jstat
777./bin/sparcv9/jstatd
778./bin/sparcv9/keytool
779./bin/sparcv9/native2ascii
780./bin/sparcv9/orbd
781./bin/sparcv9/pack200
782./bin/sparcv9/policytool
783./bin/sparcv9/rmic
784./bin/sparcv9/rmid
785./bin/sparcv9/rmiregistry
786./bin/sparcv9/schemagen
787./bin/sparcv9/serialver
788./bin/sparcv9/servertool
789./bin/sparcv9/tnameserv
790./bin/sparcv9/unpack200
791./bin/sparcv9/wsgen
792./bin/sparcv9/wsimport
793./bin/sparcv9/xjc
794./jre/bin/sparcv9/java
795./jre/bin/sparcv9/keytool
796./jre/bin/sparcv9/orbd
797./jre/bin/sparcv9/pack200
798./jre/bin/sparcv9/policytool
799./jre/bin/sparcv9/rmid
800./jre/bin/sparcv9/rmiregistry
801./jre/bin/sparcv9/servertool
802./jre/bin/sparcv9/tnameserv
803./jre/bin/sparcv9/unpack200
804"
805
806# Filter random C++ symbol strings.
807# Some numbers differ randomly.
808DIS_DIFF_FILTER="$SED -e s/\$[a-zA-Z0-9_\$]\{15,15\}/<SYM>/g -e s/[0-9a-f][0-9a-f].[0-9a-f][0-9a-f].[0-9a-f][0-9a-f].[0-9a-f][0-9a-f]/<NUMS>/g -e s/\(%g1,.0x\)[0-9a-f]*\(,.%g1\)/\1<HEX>\2/g -e s/\(!.\)[0-9a-f]*\(.<SUNWprivate_1.1+0x\)[0-9a-f]*/\1<NUM>\2<HEX>/g"
809
810# Some xor instructions end up with different args in the lib but not in the object files.
811ACCEPTED_DIS_DIFF="
812./demo/jvmti/waiters/lib/sparcv9/libwaiters.so
813"
814
815SKIP_FULLDUMP_DIFF="true"
816
817fi
818
819
820if [ "$OPENJDK_TARGET_OS" = "windows" ]; then
821
822ACCEPTED_JARZIP_CONTENTS="
823/bin/w2k_lsa_auth.dll
824"
825
826# Probably should add all libs here
827ACCEPTED_SMALL_SIZE_DIFF="
828./demo/jvmti/gctest/lib/gctest.dll
829./demo/jvmti/heapTracker/lib/heapTracker.dll
830./demo/jvmti/minst/lib/minst.dll
831./jre/bin/attach.dll
832./jre/bin/java_crw_demo.dll
833./jre/bin/jsoundds.dll
834./jre/bin/server/jvm.dll
835./bin/appletviewer.exe
836./bin/idlj.exe
837./bin/jar.exe
838./bin/jarsigner.exe
839./bin/java-rmi.exe
840./bin/java.exe
841./bin/javac.exe
842./bin/javadoc.exe
843./bin/javah.exe
844./bin/javap.exe
845./bin/jdeps.exe
846./bin/javaw.exe
847./bin/jcmd.exe
848./bin/jconsole.exe
849./bin/jdb.exe
850./bin/jhat.exe
851./bin/jimage.exe
852./bin/jinfo.exe
853./bin/jjs.exe
854./bin/jmap.exe
855./bin/jps.exe
856./bin/jrunscript.exe
857./bin/jsadebugd.exe
858./bin/jstack.exe
859./bin/jstat.exe
860./bin/jstatd.exe
861./bin/keytool.exe
862./bin/kinit.exe
863./bin/klist.exe
864./bin/ktab.exe
865./bin/native2ascii.exe
866./bin/orbd.exe
867./bin/pack200.exe
868./bin/policytool.exe
869./bin/rmic.exe
870./bin/rmid.exe
871./bin/rmiregistry.exe
872./bin/schemagen.exe
873./bin/serialver.exe
874./bin/servertool.exe
875./bin/tnameserv.exe
876./bin/unpack200.exe
877./bin/wsgen.exe
878./bin/wsimport.exe
879./bin/xjc.exe
880./jre/bin/java-rmi.exe
881./jre/bin/java.exe
882./jre/bin/javaw.exe
883./jre/bin/keytool.exe
884./jre/bin/kinit.exe
885./jre/bin/klist.exe
886./jre/bin/ktab.exe
887./jre/bin/orbd.exe
888./jre/bin/pack200.exe
889./jre/bin/policytool.exe
890./jre/bin/rmid.exe
891./jre/bin/rmiregistry.exe
892./jre/bin/servertool.exe
893./jre/bin/tnameserv.exe
894./jre/bin/unpack200.exe
895"
896
897# jabswitch.exe is compiled and linked with incremental turned on in the old
898# build. This makes no sense, so it's turned off in the new build.
899ACCEPTED_SIZE_DIFF="
900./bin/jabswitch.exe
901./jre/bin/jabswitch.exe
902"
903ACCEPTED_DIS_DIFF="
904./bin/jabswitch.exe
905./jre/bin/jabswitch.exe
906"
907
908# On windows, there are unavoidable allignment issues making
909# a perfect disasm diff impossible. Filter out the following:
910# * Random parts of C++ symbols (this is a bit greedy, but does the trick)
911#   @XXXXX
912# * Hexadecimal addresses that are sometimes alligned differently.
913# * Dates in version strings XXXX_XX_XX.
914DIS_DIFF_FILTER="$SED -e s/[@?][A-Z0-9_]\{1,25\}/<SYM>/g -e s/^.\{2,2\}[0-9A-F]\{16,16\}.\{2,2\}//g -e s/[0-9A-F]\{4,16\}h/<HEXSTR>/g -e s/_[0-9]\{4,4\}_[0-9][0-9]_[0-9][0-9]/<DATE>/g"
915
916SKIP_BIN_DIFF="true"
917SKIP_FULLDUMP_DIFF="true"
918
919fi
920
921
922if [ "$OPENJDK_TARGET_OS" = "macosx" ]; then
923ACCEPTED_JARZIP_CONTENTS="
924/META-INF/INDEX.LIST
925"
926
927KNOWN_BIN_DIFF="
928./jre/lib/libJObjC.dylib
929./lib/libJObjC.dylib
930"
931
932ACCEPTED_BIN_DIFF="
933./bin/appletviewer
934./bin/idlj
935./bin/jar
936./bin/jarsigner
937./bin/java
938./bin/javac
939./bin/javadoc
940./bin/javah
941./bin/javap
942./bin/jdeps
943./bin/jcmd
944./bin/jconsole
945./bin/jdb
946./bin/jhat
947./bin/jimage
948./bin/jinfo
949./bin/jjs
950./bin/jmap
951./bin/jps
952./bin/jrunscript
953./bin/jsadebugd
954./bin/jstack
955./bin/jstat
956./bin/jstatd
957./bin/keytool
958./bin/native2ascii
959./bin/orbd
960./bin/pack200
961./bin/policytool
962./bin/rmic
963./bin/rmid
964./bin/rmiregistry
965./bin/schemagen
966./bin/serialver
967./bin/servertool
968./bin/tnameserv
969./bin/wsgen
970./bin/wsimport
971./bin/xjc
972./jre/bin/java
973./jre/bin/keytool
974./jre/bin/orbd
975./jre/bin/pack200
976./jre/bin/policytool
977./jre/bin/rmid
978./jre/bin/rmiregistry
979./jre/bin/servertool
980./jre/bin/tnameserv
981./jre/lib/libsaproc.dylib
982./jre/lib/server/libjvm.dylib
983./lib/libsaproc.dylib
984./lib/server/libjvm.dylib
985./lib/deploy/JavaControlPanel.prefPane/Contents/MacOS/JavaControlPanel
986"
987
988KNOWN_SIZE_DIFF="
989./jre/lib/libJObjC.dylib
990./lib/libJObjC.dylib
991"
992
993SORT_SYMBOLS="
994./jre/lib/libJObjC.dylib
995./lib/libJObjC.dylib
996"
997
998KNOWN_SYM_DIFF="
999./jre/lib/libJObjC.dylib
1000./lib/libJObjC.dylib
1001"
1002
1003KNOWN_ELF_DIFF="
1004./jre/lib/libJObjC.dylib
1005./lib/libJObjC.dylib
1006"
1007
1008KNOWN_DIS_DIFF="
1009./jre/lib/libJObjC.dylib
1010./lib/libJObjC.dylib
1011"
1012
1013fi
1014