
PROBLEM: (82149) (PATCH ID: OSF510-028)
********
When Spike is applied to a program that contains a switch statement which always
goes to the same case, Spike makes the program significantly slower.


PROBLEM: (83940) (PATCH ID: OSF510-147)
********
There are some circumstances in which the Spike post-link optimizer may delete
the high instruction of a two-instruction pair, but fail to delete the
associate low instruction.  This will cause Spike to emit a runtime error
similar to the following:
FAULT: ../../../../../../src/usr/ccs/bin/spike/rel.cxx(4100):
 REL_CheckSectionRelocs: mismatched value sections for R_SPIKE_IMMED_GP_HI32 and
 R_SPIKE_IMMED_LO32

This can be worked around by passing the option "-nounreachable" to Spike.


PROBLEM: (85576, 85676) (PATCH ID: OSF510-205)
********
  
  The /usr/ucb/spike post-link optimization tool will crash if the image
  it is optimizing contains duplicate linker-defined symbols.  Under
  certain link conditions, the linker will generate duplicate linker-defined
  symbols, such as "_etext".  If spike is used to optimize images with
  these duplicate symbols, it will crash with the following assertion failure:
     ? FATAL ERROR
     ? Assertion failed.
     ? ../../../../../../src/usr/ccs/bin/spike/rel.cxx, line 2388
     NO STACKTRACE  no executable specified
     Floating exception (core dumped)

  This patch fixes the spike assertion failure.

  The /sbin/loader problem this patch fixes is with the ldr_inq_region()
  call.  Previously, no error would be returned when an invalid region
  number was passed as a parameter to the call. With this patch,
  the ldr_inq_region() call will properly report an error if it is
  passed an invalid region value.



