Commit 5ea8f977 by Douglas B Rupp Committed by Douglas Rupp

alpha.c (alpha_start_function): Handle VMS_DEBUG_MAIN_POINTER


	* config/alpha/alpha.c (alpha_start_function):
	Handle VMS_DEBUG_MAIN_POINTER
	* config/alpha/vms.h (VMS_DEBUG_MAIN_POINTER): Define new macro.
	* doc/invoke.texi: Document -mdebug-main switch.

From-SVN: r150235
parent 9b2a5ef7
2009-07-29 Douglas B Rupp <rupp@gnat.com>
* config/alpha/alpha.c (alpha_start_function):
Handle VMS_DEBUG_MAIN_POINTER
* config/alpha/vms.h (VMS_DEBUG_MAIN_POINTER): Define new macro.
* doc/invoke.texi: Document -mdebug-main switch.
2009-07-29 Richard Henderson <rth@redhat.com> 2009-07-29 Richard Henderson <rth@redhat.com>
* cgraph.c (cgraph_set_call_stmt_including_clones): Tidy. * cgraph.c (cgraph_set_call_stmt_including_clones): Tidy.
......
...@@ -7837,6 +7837,17 @@ alpha_start_function (FILE *file, const char *fnname, ...@@ -7837,6 +7837,17 @@ alpha_start_function (FILE *file, const char *fnname,
TREE_ASM_WRITTEN (name_tree) = 1; TREE_ASM_WRITTEN (name_tree) = 1;
} }
#if TARGET_ABI_OPEN_VMS
if (vms_debug_main
&& strncmp (vms_debug_main, fnname, strlen (vms_debug_main)) == 0)
{
targetm.asm_out.globalize_label (asm_out_file, VMS_DEBUG_MAIN_POINTER);
ASM_OUTPUT_DEF (asm_out_file, VMS_DEBUG_MAIN_POINTER, fnname);
switch_to_section (text_section);
vms_debug_main = NULL;
}
#endif
alpha_fnname = fnname; alpha_fnname = fnname;
sa_size = alpha_sa_size (); sa_size = alpha_sa_size ();
......
/* Output variables, constants and external declarations, for GNU compiler. /* Output variables, constants and external declarations, for GNU compiler.
Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002, 2004, 2005, 2007, 2008 Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002, 2004, 2005, 2007, 2008,
2009
Free Software Foundation, Inc. Free Software Foundation, Inc.
This file is part of GCC. This file is part of GCC.
...@@ -50,6 +51,8 @@ along with GCC; see the file COPYING3. If not see ...@@ -50,6 +51,8 @@ along with GCC; see the file COPYING3. If not see
#undef TARGET_VERSION #undef TARGET_VERSION
#define TARGET_VERSION fprintf (stderr, " (%s)", TARGET_NAME); #define TARGET_VERSION fprintf (stderr, " (%s)", TARGET_NAME);
#define VMS_DEBUG_MAIN_POINTER "TRANSFER$BREAK$GO"
#undef PCC_STATIC_STRUCT_RETURN #undef PCC_STATIC_STRUCT_RETURN
/* "long" is 32 bits, but 64 bits for Ada. */ /* "long" is 32 bits, but 64 bits for Ada. */
......
...@@ -534,7 +534,7 @@ Objective-C and Objective-C++ Dialects}. ...@@ -534,7 +534,7 @@ Objective-C and Objective-C++ Dialects}.
-mmemory-latency=@var{time}} -mmemory-latency=@var{time}}
@emph{DEC Alpha/VMS Options} @emph{DEC Alpha/VMS Options}
@gccoptlist{-mvms-return-codes} @gccoptlist{-mvms-return-codes -mdebug-main=@var{prefix}}
@emph{FR30 Options} @emph{FR30 Options}
@gccoptlist{-msmall-model -mno-lsim} @gccoptlist{-msmall-model -mno-lsim}
...@@ -10582,8 +10582,13 @@ These @samp{-m} options are defined for the DEC Alpha/VMS implementations: ...@@ -10582,8 +10582,13 @@ These @samp{-m} options are defined for the DEC Alpha/VMS implementations:
@table @gcctabopt @table @gcctabopt
@item -mvms-return-codes @item -mvms-return-codes
@opindex mvms-return-codes @opindex mvms-return-codes
Return VMS condition codes from main. The default is to return POSIX Return VMS condition codes from main. The default is to return POSIX
style condition (e.g.@: error) codes. style condition (e.g.@: error) codes.
@item -mdebug-main=@var{prefix}
@opindex mdebug-main=@var{prefix}
Flag the first routine whose name starts with @var{prefix} as the main
routine for the debugger.
@end table @end table
@node FR30 Options @node FR30 Options
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment