#include "sparc/tm-sparc.h"
#include "tm-sysv4.h"
-/* The values of N_SLINE, N_LBRAC, N_RBRAC symbols in .stab sections are
- relative to the current function, rather than being absolute or
- relative to the current N_SO. */
+#undef IN_SOLIB_TRAMPOLINE
+#define IN_SOLIB_TRAMPOLINE(pc, name) in_solib_trampoline((pc), (name))
-#define BLOCK_ADDRESS_FUNCTION_RELATIVE
+/* Do variables in the debug stabs occur after the N_LBRAC or before it?
+ acc: after, gcc: before, SunOS4 /bin/cc: before. */
-/* Variables in the debug stabs occur after the N_LBRAC, not before it,
- in code generated by Sun C. */
+#define VARIABLES_INSIDE_BLOCK(desc, gcc_p) (!(gcc_p) && n_opt_found)
-#define VARIABLES_INSIDE_BLOCK(desc, gcc_p) (!(gcc_p))
+/* For acc, there's no need to correct LBRAC entries by guessing how
+ they should work. In fact, this is harmful because the LBRAC
+ entries now all appear at the end of the function, not intermixed
+ with the SLINE entries.
-/* There's no need to correct LBRAC entries by guessing how they should
- work. In fact, this is harmful because the LBRAC entries now all appear
- at the end of the function, not intermixed with the SLINE entries. */
+ For binary from SunOS4 /bin/cc, need to correct LBRAC's.
-#define SUN_FIXED_LBRAC_BUG
+ For gcc, like acc, don't correct. */
+
+#define SUN_FIXED_LBRAC_BUG (n_opt_found || processing_gcc_compilation)
#if 0 /* FIXME Setjmp/longjmp are not as well doc'd in SunOS 5.x yet */