All of the Solaris debugging tools have been updated to work with 64-bit applications. This includes the truss(1) command, the /proc tools (proc(1)), adb, dbx, and adbgen.
The dbx debugger, capable of debugging 64-bit applications, is available as part of the Sun Workshop tool suites. The remaining tools are included with the Solaris release.
adbgen generates a program to make a given adb(1) macro. Consequently, it needs to be run on a 64-bit system with the -m lp64 option to generate 64-bit macros. See the adbgen(1M) man page for more information.
The options for all these tools except adbgen are unchanged. A number of enhancements were made to adb for debugging 64-bit programs. As expected, using "*" to dereference a pointer will dereference 8 bytes for 64-bit programs and 4 bytes for 32-bit programs. In addition, the following new modifiers were added:
Additional ?, /, = modifiers: g (8) Display 8 bytes in unsigned octal G (8) Display 8 bytes in signed octal e (8) Display 8 bytes in signed decimal E (8) Display 8 bytes in unsigned decimal J (8) Display 8 bytes in hexadecimal K (n) Print pointer or long in hexadecimal Display 4 bytes for 32-bit programs and 8 bytes for 64-bit programs. y (8) Print 8 bytes in date format Additional ? and / modifiers: M <value> <mask> Apply <mask> and compare for 8-byte value; move '.' to matching location. Z (8) write 8 bytes