Patch-ID# 102935-10 Keywords: f77 SC4.0 segfault Synopsis: SPARCompiler 4.0: FORTRAN 77 patch for Solaris 2.x Date: Dec/03/96 Solaris Release: 2.3 2.4 2.5 SunOS Release: 5.3 5.4 5.5 Unbundled Product: SPARCompiler FORTRAN 77 Unbundled Release: 4.0 Relevant Architectures: sparc BugId's fixed with this patch: 1226522 1227358 1222655 1217686 1220473 1226580 1227788 1217686 1224813 1230366 1226041 1237180 1243103 1243750 1243691 1246357 1247503 1249697 1252981 1254398 1255016 1254811 1256195 1256927 1257337 4009327 Changes incorporated in this version: 4009327 Patches accumulated and obsoleted by this patch: Patches which conflict with this patch: Patches required with this patch: Obsoleted by: Files included with this patch: bin/cg bin/iropt bin/f77pass0 bin/f77pass1 lib/libcx.a lib/libp/libcx.a lib/libF77.a lib/libF77.so.3 lib/libF77_mt.a lib/libF77_mt.so.3 lib/libp/libF77.a lib/libp/libF77_mt.a man/README/common/fortran_77 Problem Description: (Rev 10) 4009327 Fortran 77 SC4.0 seg faults. (Rev 9) 1254811 f77 4.0 -Xlist option does not complete, stops with too many errors 1256195 cg: assertion failed with -autopar -c in file regman_reporter.h. 1256927 all followed READs statements yield EOF if the first read 1257337 End-of-file is not being recognized in formatted READ (Rev 8) 1254398 Formatted I/O performance bug 1255016 Problem building CATIA with -dalign and -O2 (cg) (Rev 7) 1252981 Formatted input in fortran does not work in 4.0 (Rev 6) 1249697 Formatted read from tty works incorrectly. (Rev 5) 1246357 An error in cg causes values in registers to be overwritten by loops generated for memory-memory copy statements (e.g., Fortran string assignments) 1247503 Fortran MIN and MAX operations with common operands cause cg to abort in some cases, with the message: "cg: assertion failed in file ../src/codegen/map_pseudo.cc" 1243691 cg dumps core when compiling certain forms of apparently infinite loops, which might actually be exited by other mechanisms (e.g., a timeout signal, exit(), or longjmp()). An infinite loop coded in an obvious manner, such as "while(1){...}", does not elicit this behavior from cg. (Rev 4) (none) A test is failing with option -O2 on execution. 1243103 The performance of SC4.0 f77 is not acceptable when using the -dbl or the -r8 switches. The SC4.0 F77 compiler generates code that takes twice as long to execute on an ultra1/170 than the same code from SC3.0 F77 takes. 1243750 SC4.0 f77 OPEN with READONLY fails if file has permissions 444 (none) A new README with fixed bug list is included. (Rev 3) (none) New problem in the FORTRAN BTEST function. The problem only appears when the option "-O2" is used on the command line for the compilation. 1226041 Multiplication of long long * long gives wrong answer 1237180 Bug in software pipelining optimization causing assertion failure in some cases when -xchip=ultra and -xarch=v8plus were used at high optimization levels (Rev 2) 1217686 Fix an error in the implementation of pragma weak when it is combined with pragma C; implement syntax form pragma weak [sun] ... 1224813 Implementation of subprogram names beginning with "_". 1230366 Fix an error in implied-do which causes incorrect execution of read statement. special Requests from Dessault (CATIA port): - unconditionally 8-byte alignment for stack variables under -Qoption to f77pass1 - fix problem with N_PATCH stab which caused yabe to generate assertion failure (Rev 1) 1217686 Implement pragma weak 1220473 Implement the extension to STOP statement as following: * under the option of -stop_status (-Qoption) * STOP n to exit with status n, for integer n 1222655 cg: cannot calculate difference between symbol ".LL4" and symbol "program" 1226522 cg gives unnecessary warnings on lduha and sta instructions 1226580 Implement character operation more efficiently for CATIA; This is a performance improvement fix which is critical to CATIA. 1227358 cg gives an incorrect assertion and dies. 1227788 Fix duplicate defined label. Patch Installation Instructions: -------------------------------- Refer to the Install.info file for instructions on using the generic 'installpatch' and 'backoutpatch' scripts provided with each patch. Any other special or non-generic installation instructions should be described below as special instructions. Special Install Instructions: ----------------------------- None.