diff options
author | gingold <gingold@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-06-27 12:51:09 +0000 |
---|---|---|
committer | gingold <gingold@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-06-27 12:51:09 +0000 |
commit | ded97e7736ded7de318c4cf6704e3fdb666ab72f (patch) | |
tree | 13f91471f1f0706179d3d23de8d17a9151cb080c /gcc/config/ia64 | |
parent | 38021748648a8f16fab7559173ce58c24594bcc8 (diff) | |
download | gcc-ded97e7736ded7de318c4cf6704e3fdb666ab72f.tar.gz |
2011-06-27 Tristan Gingold <gingold@adacore.com>
PR target/44241
* config/vms/vms-protos.h: New file.
* config/vms/vms-crtlmap.map: New file.
* config/vms/vms.c: New file.
* config/vms/make-crtlmap.awk: New file.
* config/vms/vms-crtl.h: File removed.
* config/vms/vms-crtl-64.h: File removed.
* config/vms/t-vms (vms-crtlmap.h, vms.o): New targets.
* config/alpha/vms64.h: Do not include vms-crtl-64.h
* config/alpha/alpha.c (alpha_init_builtins): Remove code to
clear some builtins on VMS. Calls vms_patch_builtins.
(avms_asm_output_external): Remove.
* config/alpha/vms.h (ASM_OUTPUT_EXTERNAL): Remove.
(struct crtl_name_spec): Remove
(DO_CTRL_NAMES): Remove.
* config/ia64/vms.h (struct crtl_name_spec): Remove
(DO_CTRL_NAMES): Remove.
* config/ia64/ia64.c (alpha_init_builtins): Remove code to
clear some builtins on VMS. Calls vms_patch_builtins.
(ia64_asm_output_external): Remove DO_CRTL_NAME.
* config/ia64/vms64.h: Do not include vms-crtl-64.h
* config.gcc (*-*-*vms*): Define extra_objs, target_gtfiles,
tm_p_file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175523 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/ia64')
-rw-r--r-- | gcc/config/ia64/ia64.c | 7 | ||||
-rw-r--r-- | gcc/config/ia64/vms.h | 46 | ||||
-rw-r--r-- | gcc/config/ia64/vms64.h | 2 |
3 files changed, 1 insertions, 54 deletions
diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c index 901481358b3..b0d9dc8a746 100644 --- a/gcc/config/ia64/ia64.c +++ b/gcc/config/ia64/ia64.c @@ -10133,8 +10133,7 @@ ia64_init_builtins (void) /* Fwrite on VMS is non-standard. */ if (TARGET_ABI_OPEN_VMS) { - implicit_built_in_decls[(int) BUILT_IN_FWRITE] = NULL_TREE; - implicit_built_in_decls[(int) BUILT_IN_FWRITE_UNLOCKED] = NULL_TREE; + vms_patch_builtins (); } #define def_builtin(name, type, code) \ @@ -10263,10 +10262,6 @@ ia64_asm_output_external (FILE *file, tree decl, const char *name) int need_visibility = ((*targetm.binds_local_p) (decl) && maybe_assemble_visibility (decl)); -#ifdef DO_CRTL_NAMES - DO_CRTL_NAMES; -#endif - /* GNU as does not need anything here, but the HP linker does need something for external functions. */ if ((TARGET_HPUX_LD || !TARGET_GNU_AS) diff --git a/gcc/config/ia64/vms.h b/gcc/config/ia64/vms.h index 5d87e711856..847d79afa1d 100644 --- a/gcc/config/ia64/vms.h +++ b/gcc/config/ia64/vms.h @@ -132,52 +132,6 @@ STATIC func_ptr __CTOR_LIST__[1] \ /* Maybe same as HPUX? Needs to be checked. */ #define JMP_BUF_SIZE (8 * 76) -typedef struct crtl_name_spec -{ - const char *const name; - const char *deccname; - int referenced; -} crtl_name_spec; - -#include "config/vms/vms-crtl.h" - -/* Alias CRTL names to 32/64bit DECCRTL functions. - Fixme: This should do a binary search. */ -#define DO_CRTL_NAMES \ - do \ - { \ - int i; \ - static crtl_name_spec vms_crtl_names[] = CRTL_NAMES; \ - static int malloc64_init = 0; \ - \ - if ((malloc64_init == 0) && TARGET_MALLOC64) \ - { \ - for (i=0; vms_crtl_names [i].name; i++) \ - { \ - if (strcmp ("calloc", vms_crtl_names [i].name) == 0) \ - vms_crtl_names [i].deccname = "decc$_calloc64"; \ - else \ - if (strcmp ("malloc", vms_crtl_names [i].name) == 0) \ - vms_crtl_names [i].deccname = "decc$_malloc64"; \ - else \ - if (strcmp ("realloc", vms_crtl_names [i].name) == 0) \ - vms_crtl_names [i].deccname = "decc$_realloc64"; \ - else \ - if (strcmp ("strdup", vms_crtl_names [i].name) == 0) \ - vms_crtl_names [i].deccname = "decc$_strdup64"; \ - } \ - malloc64_init = 1; \ - } \ - for (i=0; vms_crtl_names [i].name; i++) \ - if (!vms_crtl_names [i].referenced && \ - (strcmp (name, vms_crtl_names [i].name) == 0)) \ - { \ - fprintf (file, "\t.alias %s, \"%s\"\n", \ - name, vms_crtl_names [i].deccname); \ - vms_crtl_names [i].referenced = 1; \ - } \ - } while (0) - #undef SUBTARGET_OPTIMIZATION_OPTIONS #define SUBTARGET_OPTIMIZATION_OPTIONS \ { OPT_LEVELS_ALL, OPT_fmerge_constants, NULL, 0 } diff --git a/gcc/config/ia64/vms64.h b/gcc/config/ia64/vms64.h index ac1d7a50799..a92014337c5 100644 --- a/gcc/config/ia64/vms64.h +++ b/gcc/config/ia64/vms64.h @@ -37,5 +37,3 @@ along with GCC; see the file COPYING3. If not see #undef TARGET_DEFAULT #define TARGET_DEFAULT (MASK_DWARF2_ASM | MASK_GNU_AS | MASK_MALLOC64) - -#include "config/vms/vms-crtl-64.h" |