summaryrefslogtreecommitdiff
path: root/gcc/config/alpha/t-vms
diff options
context:
space:
mode:
authorrupp <rupp@138bc75d-0d04-0410-961f-82ee72b054a4>2009-08-10 04:38:02 +0000
committerrupp <rupp@138bc75d-0d04-0410-961f-82ee72b054a4>2009-08-10 04:38:02 +0000
commit50f36bdbffd90bd6d00fc968429cad748d5e1d8c (patch)
treef94897c69f91dfc8c84467b5f742fe05f551e72f /gcc/config/alpha/t-vms
parentc45d3ddf9f8a995d8cf16e9a87932887406e799c (diff)
downloadgcc-50f36bdbffd90bd6d00fc968429cad748d5e1d8c.tar.gz
* config/alpha/alpha.c (struct machine_function): New flag for VMS,
uses_condition_handler. (alpha_expand_builtin_establish_vms_condition_handler): New expander. (alpha_expand_builtin_revert_vms_condition_handler): New expander. (enum alpha_builtin): New ALPHA_BUILTIN_REVERT_VMS_CONDITION_HANDLER and ALPHA_BUILTIN_ESTABLISH_VMS_CONDITION_HANDLER values. (code_for_builtin): New insn codes for the new alpha_builtins. (alpha_init_builtins): Register the new functions as BUILT_IN_MD. (alpha_sa_size): Account for uses_condition_handler. (alpha_expand_prologue): Likewise. (alpha_start_function): Likewise. (alpha_expand_epilogue): Likewise. * config/alpha/alpha-protos.h: Prototype the new alpha.c builtin establish/revert expanders. * config/alpha/alpha.h (DWARF_FRAME_REGNUM): Define. * config/alpha/alpha.md (builtin_establish_vms_condition_handler): New expander, resorting to the alpha.c associated function. (builtin_revert_vms_condition_handler): Likewise. * config/alpha/vms-gcc_shell_handler.c: New file. Implements __gcc_shell_handler, the static VMS condition handler used as an indirection wrapper to the current dynamically established handler. * config/alpha/vms-unwind.h: Complete rewrite. * config/alpha/t-vms (LIB2FUNCS_EXTRA): Add vms-gcc_shell_handler.c * config/alpha/vms.h (MD_UNWIND_SUPPORT): git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150612 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/alpha/t-vms')
-rw-r--r--gcc/config/alpha/t-vms2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/config/alpha/t-vms b/gcc/config/alpha/t-vms
index e11051278f0..410e219ff5b 100644
--- a/gcc/config/alpha/t-vms
+++ b/gcc/config/alpha/t-vms
@@ -17,6 +17,8 @@
# along with GCC; see the file COPYING3. If not see
# <http://www.gnu.org/licenses/>.
+LIB2FUNCS_EXTRA = $(srcdir)/config/alpha/vms-gcc_shell_handler.c
+
EXTRA_PARTS = vms-dwarf2.o vms-dwarf2eh.o $(VMS_EXTRA_PARTS) \
crtbegin.o crtbeginS.o crtend.o crtendS.o