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.
  30 if [ -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
  33 fi
  34 
  35 ##########################################################################################
  36 # Diff exceptions
  37 
  38 if [ "$OPENJDK_TARGET_OS" = "linux" ]; then
  39 
  40   STRIP_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/minst/lib/libminst.so
  46       ./demo/jvmti/mtrace/lib/libmtrace.so
  47       ./demo/jvmti/versionCheck/lib/libversionCheck.so
  48       ./demo/jvmti/waiters/lib/libwaiters.so
  49       "
  50 
  51   ACCEPTED_BIN_DIFF="
  52       ./demo/jvmti/compiledMethodLoad/lib/libcompiledMethodLoad.so
  53       ./demo/jvmti/gctest/lib/libgctest.so
  54       ./demo/jvmti/heapTracker/lib/libheapTracker.so
  55       ./demo/jvmti/heapViewer/lib/libheapViewer.so
  56       ./demo/jvmti/minst/lib/libminst.so
  57       ./demo/jvmti/mtrace/lib/libmtrace.so
  58       ./demo/jvmti/versionCheck/lib/libversionCheck.so
  59       ./demo/jvmti/waiters/lib/libwaiters.so
  60       ./lib$OPENJDK_TARGET_CPU_LIBDIR/client/libjsig.so
  61       ./lib$OPENJDK_TARGET_CPU_LIBDIR/client/libjvm.so
  62       ./lib$OPENJDK_TARGET_CPU_LIBDIR/libattach.so
  63       ./lib$OPENJDK_TARGET_CPU_LIBDIR/libdt_socket.so
  64       ./lib$OPENJDK_TARGET_CPU_LIBDIR/libinstrument.so
  65       ./lib$OPENJDK_TARGET_CPU_LIBDIR/libjsdt.so
  66       ./lib$OPENJDK_TARGET_CPU_LIBDIR/libjsig.so
  67       ./lib$OPENJDK_TARGET_CPU_LIBDIR/libmanagement.so
  68       ./lib$OPENJDK_TARGET_CPU_LIBDIR/libnet.so
  69       ./lib$OPENJDK_TARGET_CPU_LIBDIR/libnpt.so
  70       ./lib$OPENJDK_TARGET_CPU_LIBDIR/libverify.so
  71       ./lib$OPENJDK_TARGET_CPU_LIBDIR/minimal/libjsig.so
  72       ./lib$OPENJDK_TARGET_CPU_LIBDIR/minimal/libjvm.so
  73       ./lib$OPENJDK_TARGET_CPU_LIBDIR/server/libjsig.so
  74       ./lib$OPENJDK_TARGET_CPU_LIBDIR/server/libjvm.so
  75       ./bin/appletviewer
  76       ./bin/idlj
  77       ./bin/jar
  78       ./bin/jarsigner
  79       ./bin/java
  80       ./bin/javac
  81       ./bin/javadoc
  82       ./bin/javah
  83       ./bin/javap
  84       ./bin/jdeps
  85       ./bin/jcmd
  86       ./bin/jconsole
  87       ./bin/jdb
  88       ./bin/jhsdb
  89       ./bin/jimage
  90       ./bin/jinfo
  91       ./bin/jjs
  92       ./bin/jmap
  93       ./bin/jps
  94       ./bin/jrunscript
  95       ./bin/jsadebugd
  96       ./bin/jshell
  97       ./bin/jstack
  98       ./bin/jstat
  99       ./bin/jstatd
 100       ./bin/keytool
 101       ./bin/orbd
 102       ./bin/pack200
 103       ./bin/policytool
 104       ./bin/rmic
 105       ./bin/rmid
 106       ./bin/rmiregistry
 107       ./bin/schemagen
 108       ./bin/serialver
 109       ./bin/servertool
 110       ./bin/tnameserv
 111       ./bin/wsgen
 112       ./bin/wsimport
 113       ./bin/xjc
 114       "
 115 
 116   # Issue with __FILE__ usage in generated header files prevent clean fulldump diff of
 117   # server jvm with old hotspot build.
 118   KNOWN_FULLDUMP_DIFF="
 119       ./lib$OPENJDK_TARGET_CPU_LIBDIR/client/libjvm.so
 120       ./lib$OPENJDK_TARGET_CPU_LIBDIR/server/libjvm.so
 121       ./lib$OPENJDK_TARGET_CPU_LIBDIR/minimal/libjvm.so
 122       "
 123 
 124   if [ "$OPENJDK_TARGET_CPU" = "x86" ]; then
 125     KNOWN_DIS_DIFF="
 126         ./lib$OPENJDK_TARGET_CPU_LIBDIR/server/libjvm.so
 127         "
 128     DIS_DIFF_FILTER="$SED \
 129         -e 's/\(:\t\)\([0-9a-z]\{2,2\} \)\{1,7\}/\1<hex>/g' \
 130         -e 's/0x[0-9a-z]\{2,9\}/<hex>/g'"
 131   fi
 132 fi
 133 
 134 if [ "$OPENJDK_TARGET_OS" = "solaris" ] && [ "$OPENJDK_TARGET_CPU" = "x86_64" ]; then
 135 
 136   STRIP_BEFORE_COMPARE="
 137       ./demo/jni/Poller/lib/libPoller.so
 138       ./demo/jvmti/compiledMethodLoad/lib/libcompiledMethodLoad.so
 139       ./demo/jvmti/gctest/lib/libgctest.so
 140       ./demo/jvmti/heapTracker/lib/libheapTracker.so
 141       ./demo/jvmti/heapViewer/lib/libheapViewer.so
 142       ./demo/jvmti/minst/lib/libminst.so
 143       ./demo/jvmti/mtrace/lib/libmtrace.so
 144       ./demo/jvmti/versionCheck/lib/libversionCheck.so
 145       ./demo/jvmti/waiters/lib/libwaiters.so
 146       "
 147 
 148   SORT_SYMBOLS="
 149       ./lib/amd64/server/libjvm.so
 150       ./lib/amd64/libfontmanager.so
 151       ./lib/amd64/libjimage.so
 152       ./lib/amd64/libsaproc.so
 153       ./lib/amd64/libunpack.so
 154       ./bin/unpack200
 155       "
 156 
 157   SKIP_BIN_DIFF="true"
 158 
 159   ACCEPTED_SMALL_SIZE_DIFF="
 160       ./demo/jni/Poller/lib/libPoller.so
 161       ./demo/jvmti/compiledMethodLoad/lib/libcompiledMethodLoad.so
 162       ./demo/jvmti/gctest/lib/libgctest.so
 163       ./demo/jvmti/heapTracker/lib/libheapTracker.so
 164       ./demo/jvmti/heapViewer/lib/libheapViewer.so
 165       ./demo/jvmti/minst/lib/libminst.so
 166       ./demo/jvmti/mtrace/lib/libmtrace.so
 167       ./demo/jvmti/versionCheck/lib/libversionCheck.so
 168       ./demo/jvmti/waiters/lib/libwaiters.so
 169       ./lib/amd64/jli/libjli.so
 170       ./lib/amd64/jspawnhelper
 171       ./lib/amd64/libJdbcOdbc.so
 172       ./lib/amd64/libattach.so
 173       ./lib/amd64/libawt.so
 174       ./lib/amd64/libawt_headless.so
 175       ./lib/amd64/libawt_xawt.so
 176       ./lib/amd64/libdcpr.so
 177       ./lib/amd64/libdt_socket.so
 178       ./lib/amd64/libfontmanager.so
 179       ./lib/amd64/libinstrument.so
 180       ./lib/amd64/libj2gss.so
 181       ./lib/amd64/libj2pcsc.so
 182       ./lib/amd64/libj2pkcs11.so
 183       ./lib/amd64/libj2ucrypto.so
 184       ./lib/amd64/libjaas_unix.so
 185       ./lib/amd64/libjava.so
 186       ./lib/amd64/libjawt.so
 187       ./lib/amd64/libjdwp.so
 188       ./lib/amd64/libjpeg.so
 189       ./lib/amd64/libjsdt.so
 190       ./lib/amd64/libjsound.so
 191       ./lib/amd64/libkcms.so
 192       ./lib/amd64/liblcms.so
 193       ./lib/amd64/libmanagement.so
 194       ./lib/amd64/libmlib_image.so
 195       ./lib/amd64/libnet.so
 196       ./lib/amd64/libnio.so
 197       ./lib/amd64/libnpt.so
 198       ./lib/amd64/libsctp.so
 199       ./lib/amd64/libsplashscreen.so
 200       ./lib/amd64/libsunec.so
 201       ./lib/amd64/libsunwjdga.so
 202       ./lib/amd64/libt2k.so
 203       ./lib/amd64/libunpack.so
 204       ./lib/amd64/libverify.so
 205       ./lib/amd64/libzip.so
 206       ./lib/amd64/server/64/libjvm_db.so
 207       ./lib/amd64/server/64/libjvm_dtrace.so
 208       ./lib/amd64/server/libjvm.so
 209       ./lib/amd64/server/libjvm_db.so
 210       ./lib/amd64/server/libjvm_dtrace.so
 211       ./bin/appletviewer
 212       ./bin/idlj
 213       ./bin/jar
 214       ./bin/jarsigner
 215       ./bin/java
 216       ./bin/javac
 217       ./bin/javadoc
 218       ./bin/javah
 219       ./bin/javap
 220       ./bin/jdeps
 221       ./bin/jcmd
 222       ./bin/jconsole
 223       ./bin/jdb
 224       ./bin/jimage
 225       ./bin/jinfo
 226       ./bin/jjs
 227       ./bin/jmap
 228       ./bin/jps
 229       ./bin/jrunscript
 230       ./bin/jsadebugd
 231       ./bin/jstack
 232       ./bin/jstat
 233       ./bin/jstatd
 234       ./bin/keytool
 235       ./bin/orbd
 236       ./bin/pack200
 237       ./bin/policytool
 238       ./bin/rmic
 239       ./bin/rmid
 240       ./bin/rmiregistry
 241       ./bin/schemagen
 242       ./bin/serialver
 243       ./bin/servertool
 244       ./bin/tnameserv
 245       ./bin/unpack200
 246       ./bin/wsgen
 247       ./bin/wsimport
 248       ./bin/xjc
 249       "
 250 
 251   SKIP_FULLDUMP_DIFF="true"
 252 
 253   # Filter random C++ symbol strings.
 254   # Some numbers differ randomly.
 255   DIS_DIFF_FILTER="$SED \
 256       -e 's/\.[a-zA-Z0-9_\$]\{15\}/<SYM>/g' \
 257       -e 's/\(\# \)[0-9a-f]*\( <\)/\1<HEX>\2/g' \
 258       -e 's/0x[0-9a-f]*$/<HEX>/g' \
 259       -e 's/0x[0-9a-f]*\([,(>]\)/<HEX>\1/g' \
 260       -e 's/:   [0-9a-f][0-9a-f]\( [0-9a-f][0-9a-f]\)\{2,10\}/: <NUMS>/g' \
 261       -e 's/     [\.A-Za-z0-9%@]\{16\}$/     <BIN>/g'"
 262 
 263 fi
 264 
 265 if [ "$OPENJDK_TARGET_OS" = "solaris" ] && [ "$OPENJDK_TARGET_CPU" = "sparcv9" ]; then
 266 
 267   STRIP_BEFORE_COMPARE="
 268       ./demo/jni/Poller/lib/libPoller.so
 269       ./demo/jvmti/compiledMethodLoad/lib/libcompiledMethodLoad.so
 270       ./demo/jvmti/gctest/lib/libgctest.so
 271       ./demo/jvmti/heapTracker/lib/libheapTracker.so
 272       ./demo/jvmti/heapViewer/lib/libheapViewer.so
 273       ./demo/jvmti/minst/lib/libminst.so
 274       ./demo/jvmti/mtrace/lib/libmtrace.so
 275       ./demo/jvmti/versionCheck/lib/libversionCheck.so
 276       ./demo/jvmti/waiters/lib/libwaiters.so
 277       "
 278 
 279   SORT_SYMBOLS="
 280       ./demo/jvmti/waiters/lib/libwaiters.so
 281       ./lib/sparcv9/libjsig.so
 282       ./lib/sparcv9/libfontmanager.so
 283       ./lib/sparcv9/libjimage.so
 284       ./lib/sparcv9/libsaproc.so
 285       ./lib/sparcv9/libunpack.so
 286       ./lib/sparcv9/server/libjvm.so
 287       ./lib/sparcv9/server/libjvm_dtrace.so
 288       ./bin/unpack200
 289       "
 290 
 291   SKIP_BIN_DIFF="true"
 292 
 293   ACCEPTED_SMALL_SIZE_DIFF="
 294       ./demo/jni/Poller/lib/libPoller.so
 295       ./demo/jvmti/compiledMethodLoad/lib/libcompiledMethodLoad.so
 296       ./demo/jvmti/gctest/lib/libgctest.so
 297       ./demo/jvmti/heapTracker/lib/libheapTracker.so
 298       ./demo/jvmti/heapViewer/lib/libheapViewer.so
 299       ./demo/jvmti/minst/lib/libminst.so
 300       ./demo/jvmti/mtrace/lib/libmtrace.so
 301       ./demo/jvmti/versionCheck/lib/libversionCheck.so
 302       ./demo/jvmti/waiters/lib/libwaiters.so
 303       ./lib/sparcv9/client/libjvm.so
 304       ./lib/sparcv9/jli/libjli.so
 305       ./lib/sparcv9/jspawnhelper
 306       ./lib/sparcv9/libJdbcOdbc.so
 307       ./lib/sparcv9/libattach.so
 308       ./lib/sparcv9/libawt.so
 309       ./lib/sparcv9/libawt_headless.so
 310       ./lib/sparcv9/libawt_xawt.so
 311       ./lib/sparcv9/libdcpr.so
 312       ./lib/sparcv9/libdt_socket.so
 313       ./lib/sparcv9/libfontmanager.so
 314       ./lib/sparcv9/libinstrument.so
 315       ./lib/sparcv9/libj2gss.so
 316       ./lib/sparcv9/libj2pcsc.so
 317       ./lib/sparcv9/libj2pkcs11.so
 318       ./lib/sparcv9/libj2ucrypto.so
 319       ./lib/sparcv9/libjaas_unix.so
 320       ./lib/sparcv9/libjava.so
 321       ./lib/sparcv9/libjawt.so
 322       ./lib/sparcv9/libjdwp.so
 323       ./lib/sparcv9/libjpeg.so
 324       ./lib/sparcv9/libjsdt.so
 325       ./lib/sparcv9/libjsound.so
 326       ./lib/sparcv9/libkcms.so
 327       ./lib/sparcv9/liblcms.so
 328       ./lib/sparcv9/libmanagement.so
 329       ./lib/sparcv9/libmlib_image.so
 330       ./lib/sparcv9/libmlib_image_v.so
 331       ./lib/sparcv9/libnet.so
 332       ./lib/sparcv9/libnio.so
 333       ./lib/sparcv9/libnpt.so
 334       ./lib/sparcv9/libsctp.so
 335       ./lib/sparcv9/libsplashscreen.so
 336       ./lib/sparcv9/libsunec.so
 337       ./lib/sparcv9/libsunwjdga.so
 338       ./lib/sparcv9/libt2k.so
 339       ./lib/sparcv9/libunpack.so
 340       ./lib/sparcv9/libverify.so
 341       ./lib/sparcv9/libzip.so
 342       ./lib/sparcv9/server/libjvm.so
 343       ./bin/appletviewer
 344       ./bin/idlj
 345       ./bin/jar
 346       ./bin/jarsigner
 347       ./bin/java
 348       ./bin/javac
 349       ./bin/javadoc
 350       ./bin/javah
 351       ./bin/javap
 352       ./bin/jdeps
 353       ./bin/jcmd
 354       ./bin/jconsole
 355       ./bin/jdb
 356       ./bin/jimage
 357       ./bin/jinfo
 358       ./bin/jjs
 359       ./bin/jmap
 360       ./bin/jps
 361       ./bin/jrunscript
 362       ./bin/jsadebugd
 363       ./bin/jstack
 364       ./bin/jstat
 365       ./bin/jstatd
 366       ./bin/keytool
 367       ./bin/orbd
 368       ./bin/pack200
 369       ./bin/policytool
 370       ./bin/rmic
 371       ./bin/rmid
 372       ./bin/rmiregistry
 373       ./bin/schemagen
 374       ./bin/serialver
 375       ./bin/servertool
 376       ./bin/tnameserv
 377       ./bin/unpack200
 378       ./bin/wsgen
 379       ./bin/wsimport
 380       ./bin/xjc
 381       "
 382 
 383   # Some numbers differ randomly.
 384   DIS_DIFF_FILTER="$SED \
 385       -e 's/\$[a-zA-Z0-9_\$]\{15\}/<SYM>/g' \
 386       -e 's/:   [0-9a-f][0-9a-f]\( [0-9a-f][0-9a-f]\)\{2,10\}/: <NUMS>/g' \
 387       -e 's/, [0-9a-fx\-]\{1,8\}/, <CONST>/g' \
 388       -e 's/call  [0-9a-f]\{7\}/call  <ADDR>/g' \
 389       -e 's/0x[0-9a-f]\{1,8\}/<HEX>/g' \
 390       -e 's/\! [0-9a-f]\{1,8\} /! <ADDR> /g'"
 391 
 392   # libjvm.so
 393   # __FILE__ macro usage in debug.hpp causes differences between old and new
 394   # hotspot builds in ad_sparc.o and ad_sparc_clone.o. The .o files compare
 395   # equal when stripped, but at link time differences appear. Removing
 396   # __FILE__ from ShouldNotCallThis() and ShouldNotReachHere() removes
 397   # the differences.
 398   KNOWN_DIS_DIFF="
 399       ./lib/sparcv9/server/libjvm.so
 400       ./lib/sparcv9/libsaproc.so
 401   "
 402 
 403   SKIP_FULLDUMP_DIFF="true"
 404 
 405 fi
 406 
 407 
 408 if [ "$OPENJDK_TARGET_OS" = "windows" ]; then
 409 
 410   ACCEPTED_JARZIP_CONTENTS="
 411       /modules_libs/java.security.jgss/w2k_lsa_auth.diz
 412       /modules_libs/java.security.jgss/w2k_lsa_auth.dll
 413       "
 414 
 415   # Probably should add all libs here
 416   ACCEPTED_SMALL_SIZE_DIFF="
 417       ./demo/jvmti/gctest/lib/gctest.dll
 418       ./demo/jvmti/heapTracker/lib/heapTracker.dll
 419       ./demo/jvmti/minst/lib/minst.dll
 420       ./bin/attach.dll
 421       ./bin/jsoundds.dll
 422       ./bin/server/jvm.dll
 423       ./bin/appletviewer.exe
 424       ./bin/idlj.exe
 425       ./bin/jar.exe
 426       ./bin/jarsigner.exe
 427       ./bin/java-rmi.exe
 428       ./bin/java.exe
 429       ./bin/javac.exe
 430       ./bin/javadoc.exe
 431       ./bin/javah.exe
 432       ./bin/javap.exe
 433       ./bin/jdeps.exe
 434       ./bin/javaw.exe
 435       ./bin/jcmd.exe
 436       ./bin/jconsole.exe
 437       ./bin/jdb.exe
 438       ./bin/jimage.exe
 439       ./bin/jinfo.exe
 440       ./bin/jjs.exe
 441       ./bin/jmap.exe
 442       ./bin/jps.exe
 443       ./bin/jrunscript.exe
 444       ./bin/jsadebugd.exe
 445       ./bin/jstack.exe
 446       ./bin/jstat.exe
 447       ./bin/jstatd.exe
 448       ./bin/keytool.exe
 449       ./bin/kinit.exe
 450       ./bin/klist.exe
 451       ./bin/ktab.exe
 452       ./bin/orbd.exe
 453       ./bin/pack200.exe
 454       ./bin/policytool.exe
 455       ./bin/rmic.exe
 456       ./bin/rmid.exe
 457       ./bin/rmiregistry.exe
 458       ./bin/schemagen.exe
 459       ./bin/serialver.exe
 460       ./bin/servertool.exe
 461       ./bin/tnameserv.exe
 462       ./bin/unpack200.exe
 463       ./bin/wsgen.exe
 464       ./bin/wsimport.exe
 465       ./bin/xjc.exe
 466       "
 467 
 468   ACCEPTED_DIS_DIFF="
 469       ./bin/jabswitch.exe
 470       "
 471 
 472   # On windows, there are unavoidable allignment issues making
 473   # a perfect disasm diff impossible. Filter out the following:
 474   # * Random parts of C++ symbols (this is a bit greedy, but does the trick)
 475   #   @XXXXX
 476   # * Hexadecimal addresses that are sometimes alligned differently.
 477   # * Dates in version strings XXXX_XX_XX.
 478   DIS_DIFF_FILTER="$SED \
 479       -e 's/^  [0-9A-F]\{16\}: //g' \
 480       -e 's/[@?][A-Za-z0-9_]\{1,25\}/<SYM>/g' \
 481       -e 's/\([\[+]\)[0-9A-F]\{4,16\}h\]/\1<HEXSTR>]/g' \
 482       -e 's/_[0-9]\{4\}_[0-9]\{2\}_[0-9]\{2\}/_<DATE>/g'"
 483   #DIS_DIFF_FILTER="$CAT"
 484 
 485   SKIP_BIN_DIFF="true"
 486   SKIP_FULLDUMP_DIFF="true"
 487 
 488 fi
 489 
 490 
 491 if [ "$OPENJDK_TARGET_OS" = "macosx" ]; then
 492 
 493   ACCEPTED_JARZIP_CONTENTS="
 494       /META-INF/INDEX.LIST
 495       "
 496 
 497   ACCEPTED_BIN_DIFF="
 498       ./bin/appletviewer
 499       ./bin/idlj
 500       ./bin/jar
 501       ./bin/jarsigner
 502       ./bin/java
 503       ./bin/javac
 504       ./bin/javadoc
 505       ./bin/javah
 506       ./bin/javap
 507       ./bin/javaws
 508       ./bin/jdeps
 509       ./bin/jcmd
 510       ./bin/jconsole
 511       ./bin/jdb
 512       ./bin/jimage
 513       ./bin/jinfo
 514       ./bin/jjs
 515       ./bin/jmap
 516       ./bin/jps
 517       ./bin/jrunscript
 518       ./bin/jsadebugd
 519       ./bin/jstack
 520       ./bin/jstat
 521       ./bin/jstatd
 522       ./bin/keytool
 523       ./bin/orbd
 524       ./bin/pack200
 525       ./bin/policytool
 526       ./bin/rmic
 527       ./bin/rmid
 528       ./bin/rmiregistry
 529       ./bin/schemagen
 530       ./bin/serialver
 531       ./bin/servertool
 532       ./bin/tnameserv
 533       ./bin/wsgen
 534       ./bin/wsimport
 535       ./bin/xjc
 536       ./demo/jvmti/compiledMethodLoad/lib/libcompiledMethodLoad.dylib
 537       ./demo/jvmti/gctest/lib/libgctest.dylib
 538       ./demo/jvmti/heapTracker/lib/libheapTracker.dylib
 539       ./demo/jvmti/heapViewer/lib/libheapViewer.dylib
 540       ./demo/jvmti/minst/lib/libminst.dylib
 541       ./demo/jvmti/mtrace/lib/libmtrace.dylib
 542       ./demo/jvmti/versionCheck/lib/libversionCheck.dylib
 543       ./demo/jvmti/waiters/lib/libwaiters.dylib
 544       ./Contents/Home/bin/_javaws
 545       ./Contents/Home/bin/javaws
 546       ./Contents/Home/bin/idlj
 547       ./Contents/Home/bin/servertool
 548       ./Contents/Home/lib/shortcuts/JavaWSApplicationStub
 549       ./Contents/Home/lib/jli/libjli.dylib
 550       ./Contents/Home/lib/jspawnhelper
 551       ./Contents/Home/lib/libAppleScriptEngine.dylib
 552       ./Contents/Home/lib/libattach.dylib
 553       ./Contents/Home/lib/libawt_lwawt.dylib
 554       ./Contents/Home/lib/libdeploy.dylib
 555       ./Contents/Home/lib/libdt_socket.dylib
 556       ./Contents/Home/lib/libinstrument.dylib
 557       ./Contents/Home/lib/libjdwp.dylib
 558       ./Contents/Home/lib/libjsdt.dylib
 559       ./Contents/Home/lib/libjsig.dylib
 560       ./Contents/Home/lib/libmanagement.dylib
 561       ./Contents/Home/lib/libnpjp2.dylib
 562       ./Contents/Home/lib/libosx.dylib
 563       ./Contents/Home/lib/libosxapp.dylib
 564       ./Contents/Home/lib/libosxui.dylib
 565       ./Contents/Home/lib/libverify.dylib
 566       ./Contents/Home/lib/libsaproc.dylib
 567       ./Contents/Home/lib/libsplashscreen.dylib
 568       ./Contents/Home/lib/server/libjvm.dylib
 569       ./Contents/Home/lib/deploy/JavaControlPanel.prefPane/Contents/MacOS/JavaControlPanel
 570       ./Contents/Resources/JavaControlPanelHelper
 571       ./Contents/Resources/JavaUpdater.app/Contents/MacOS/JavaUpdater
 572       ./Contents/Resources/JavawsLauncher.app/Contents/MacOS/JavawsLauncher
 573       ./lib/shortcuts/JavaWSApplicationStub
 574       ./lib/jli/libjli.dylib
 575       ./lib/jspawnhelper
 576       ./lib/libAppleScriptEngine.dylib
 577       ./lib/libattach.dylib
 578       ./lib/libawt_lwawt.dylib
 579       ./lib/libdeploy.dylib
 580       ./lib/libdt_socket.dylib
 581       ./lib/libinstrument.dylib
 582       ./lib/libjdwp.dylib
 583       ./lib/libjsdt.dylib
 584       ./lib/libjsig.dylib
 585       ./lib/libmanagement.dylib
 586       ./lib/libnpjp2.dylib
 587       ./lib/libosx.dylib
 588       ./lib/libosxapp.dylib
 589       ./lib/libosxui.dylib
 590       ./lib/libverify.dylib
 591       ./lib/libsaproc.dylib
 592       ./lib/libsplashscreen.dylib
 593       ./lib/server/libjvm.dylib
 594       ./lib/deploy/JavaControlPanel.prefPane/Contents/MacOS/JavaControlPanel
 595       ./Versions/A/Resources/finish_installation.app/Contents/MacOS/finish_installation
 596       ./Versions/A/Sparkle
 597       "
 598 
 599   SORT_SYMBOLS="
 600       ./Contents/Home/lib/libsaproc.dylib
 601       ./lib/libsaproc.dylib
 602       ./lib/libjsig.dylib
 603       "
 604 
 605   ACCEPTED_SMALL_SIZE_DIFF="$ACCEPTED_BIN_DIFF"
 606 
 607   DIS_DIFF_FILTER="LANG=C $SED \
 608       -e 's/0x[0-9a-f]\{3,16\}/<HEXSTR>/g' -e 's/^[0-9a-f]\{12,20\}/<ADDR>/' \
 609       -e 's/## literal pool for: .Java HotSpot(TM) 64-Bit Server VM.*/<COMMENT>/g'
 610       "
 611 
 612 fi