OSDN Git Service

2004-10-02 James A. Morrison <phython@gcc.gnu.org>
[pf3gnuchains/gcc-fork.git] / gcc / target-def.h
index e49d055..700d5db 100644 (file)
@@ -273,6 +273,17 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
    TARGET_SCHED_DFA_NEW_CYCLE,                                 \
    TARGET_SCHED_IS_COSTLY_DEPENDENCE}
 
+#ifndef TARGET_VECTORIZE_MISALIGNED_MEM_OK
+#define TARGET_VECTORIZE_MISALIGNED_MEM_OK default_vect_misaligned_mem_ok
+#endif
+#define TARGET_VECTORIZE_BUILTIN_MASK_FOR_LOAD 0
+#define TARGET_VECTORIZE_BUILTIN_MASK_FOR_STORE 0
+
+#define TARGET_VECTORIZE                                                \
+  {TARGET_VECTORIZE_MISALIGNED_MEM_OK,                                  \
+   TARGET_VECTORIZE_BUILTIN_MASK_FOR_LOAD,                             \
+   TARGET_VECTORIZE_BUILTIN_MASK_FOR_STORE}
+
 /* In except.c */
 #define TARGET_EH_RETURN_FILTER_MODE  default_eh_return_filter_mode
 
@@ -287,6 +298,7 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 /* In builtins.c.  */
 #define TARGET_INIT_BUILTINS hook_void_void
 #define TARGET_EXPAND_BUILTIN default_expand_builtin
+#define TARGET_FOLD_BUILTIN hook_tree_tree_bool_null
 
 /* In varasm.c.  */
 #ifndef TARGET_SECTION_TYPE_FLAGS
@@ -301,6 +313,10 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 #define TARGET_BINDS_LOCAL_P default_binds_local_p
 #endif
 
+#ifndef TARGET_SHIFT_TRUNCATION_MASK
+#define TARGET_SHIFT_TRUNCATION_MASK default_shift_truncation_mask
+#endif
+
 #ifndef TARGET_VALID_POINTER_MODE
 #define TARGET_VALID_POINTER_MODE default_valid_pointer_mode
 #endif
@@ -363,6 +379,8 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 
 #define TARGET_MD_ASM_CLOBBERS hook_tree_tree_identity
 
+#define TARGET_DWARF_CALLING_CONVENTION hook_int_tree_0
+
 #define TARGET_PROMOTE_FUNCTION_ARGS hook_bool_tree_false
 #define TARGET_PROMOTE_FUNCTION_RETURN hook_bool_tree_false
 #define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_false
@@ -379,12 +397,10 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 #define TARGET_SPLIT_COMPLEX_ARG NULL
 
 #define TARGET_GIMPLIFY_VA_ARG_EXPR std_gimplify_va_arg_expr
-
-#define TARGET_PASS_BY_REFERENCE hook_pass_by_reference_false
-
+#define TARGET_PASS_BY_REFERENCE hook_bool_CUMULATIVE_ARGS_mode_tree_bool_false
 #define TARGET_LATE_RTL_PROLOGUE_EPILOGUE false
-
 #define TARGET_MUST_PASS_IN_STACK must_pass_in_stack_var_size_or_pad
+#define TARGET_CALLEE_COPIES hook_bool_CUMULATIVE_ARGS_mode_tree_bool_false
 
 #define TARGET_CALLS {                                         \
    TARGET_PROMOTE_FUNCTION_ARGS,                               \
@@ -399,7 +415,8 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
    TARGET_STRICT_ARGUMENT_NAMING,                              \
    TARGET_PRETEND_OUTGOING_VARARGS_NAMED,                      \
    TARGET_SPLIT_COMPLEX_ARG,                                   \
-   TARGET_MUST_PASS_IN_STACK                                   \
+   TARGET_MUST_PASS_IN_STACK,                                  \
+   TARGET_CALLEE_COPIES                                                \
    }
 
 
@@ -441,15 +458,20 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 #define TARGET_CXX_KEY_METHOD_MAY_BE_INLINE hook_bool_void_true
 #endif
 
-#define TARGET_CXX             \
-  {                            \
-    TARGET_CXX_GUARD_TYPE,     \
-    TARGET_CXX_GUARD_MASK_BIT, \
-    TARGET_CXX_GET_COOKIE_SIZE,        \
-    TARGET_CXX_COOKIE_HAS_SIZE,        \
-    TARGET_CXX_IMPORT_EXPORT_CLASS,    \
-    TARGET_CXX_CDTOR_RETURNS_THIS,     \
-    TARGET_CXX_KEY_METHOD_MAY_BE_INLINE \
+#ifndef TARGET_CXX_EXPORT_CLASS_DATA
+#define TARGET_CXX_EXPORT_CLASS_DATA hook_bool_void_false
+#endif
+
+#define TARGET_CXX                             \
+  {                                            \
+    TARGET_CXX_GUARD_TYPE,                     \
+    TARGET_CXX_GUARD_MASK_BIT,                 \
+    TARGET_CXX_GET_COOKIE_SIZE,                        \
+    TARGET_CXX_COOKIE_HAS_SIZE,                        \
+    TARGET_CXX_IMPORT_EXPORT_CLASS,            \
+    TARGET_CXX_CDTOR_RETURNS_THIS,             \
+    TARGET_CXX_KEY_METHOD_MAY_BE_INLINE,       \
+    TARGET_CXX_EXPORT_CLASS_DATA               \
   }
 
 /* The whole shebang.  */
@@ -457,6 +479,7 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 {                                              \
   TARGET_ASM_OUT,                              \
   TARGET_SCHED,                                        \
+  TARGET_VECTORIZE,                            \
   TARGET_EH_RETURN_FILTER_MODE,                        \
   TARGET_MERGE_DECL_ATTRIBUTES,                        \
   TARGET_MERGE_TYPE_ATTRIBUTES,                        \
@@ -469,6 +492,7 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
   TARGET_ALIGN_ANON_BITFIELD,                  \
   TARGET_INIT_BUILTINS,                                \
   TARGET_EXPAND_BUILTIN,                       \
+  TARGET_FOLD_BUILTIN,                         \
   TARGET_MANGLE_FUNDAMENTAL_TYPE,              \
   TARGET_INIT_LIBFUNCS,                                \
   TARGET_SECTION_TYPE_FLAGS,                   \
@@ -483,6 +507,7 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
   TARGET_BINDS_LOCAL_P,                                \
   TARGET_ENCODE_SECTION_INFO,                  \
   TARGET_STRIP_NAME_ENCODING,                  \
+  TARGET_SHIFT_TRUNCATION_MASK,                        \
   TARGET_VALID_POINTER_MODE,                    \
   TARGET_SCALAR_MODE_SUPPORTED_P,              \
   TARGET_VECTOR_MODE_SUPPORTED_P,               \
@@ -500,6 +525,7 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
   TARGET_DEFAULT_SHORT_ENUMS,                  \
   TARGET_BUILTIN_SETJMP_FRAME_VALUE,           \
   TARGET_MD_ASM_CLOBBERS,                      \
+  TARGET_DWARF_CALLING_CONVENTION,              \
   TARGET_CALLS,                                        \
   TARGET_CXX,                                  \
   TARGET_HAVE_NAMED_SECTIONS,                  \