changeset 59:5b5b9ea5b220

fix
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 15 Feb 2010 17:22:24 +0900
parents 3aaf117db171
children bd49c42ec43e
files gcc/c-parser.c gcc/dwarf2.h gcc/gimple.c
diffstat 3 files changed, 33 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- a/gcc/c-parser.c	Mon Feb 15 14:58:24 2010 +0900
+++ b/gcc/c-parser.c	Mon Feb 15 17:22:24 2010 +0900
@@ -3950,7 +3950,7 @@
           CbC_IS_CbC_GOTO (expr.value) = 1;
           CALL_EXPR_TAILCALL (expr.value) = 1;
           add_stmt(expr.value);
-          stmt = c_finish_return(loc, expr.value, expr.original_type); /* stmt = c_finish_return (0); */
+          stmt = c_finish_return(loc, NULL_TREE, NULL_TREE); /* stmt = c_finish_return (0); */
         }
           else
         c_parser_error (parser, "expected code segment jump or %<*%>");
@@ -6010,7 +6010,7 @@
                 c_parser_peek_token (parser)->location);*/
         loc = c_parser_peek_token (parser)->location;
         tree env_tree = build_external_ref (loc,
-            get_identifier ("__builtin_frame_address"), 0, NULL);
+            get_identifier ("__builtin_frame_address"), 0, &expr.original_type);
         expr.value = build_function_call(loc, env_tree,
                build_tree_list (NULL_TREE, build_int_cst (NULL_TREE,0)));
         expr.original_code = ERROR_MARK;
--- a/gcc/dwarf2.h	Mon Feb 15 14:58:24 2010 +0900
+++ b/gcc/dwarf2.h	Mon Feb 15 17:22:24 2010 +0900
@@ -203,6 +203,12 @@
     DW_TAG_class_template = 0x4103,	/* For C++.  */
     DW_TAG_GNU_BINCL = 0x4104,
     DW_TAG_GNU_EINCL = 0x4105,
+DW_TAG_rvalue_reference_type = 0x4106,
+DW_TAG_template_alias = 0x4107,
+DW_TAG_type_unit = 0x4108,
+DW_TAG_GNU_formal_parameter_pack = 0x4109,
+DW_TAG_GNU_template_parameter_pack = 0x410a,
+DW_TAG_GNU_template_template_param = 0x410b,
     /* Extensions for UPC.  See: http://upc.gwu.edu/~upc.  */
     DW_TAG_upc_shared_type = 0x8765,
     DW_TAG_upc_strict_type = 0x8766,
@@ -242,7 +248,13 @@
     DW_FORM_ref4 = 0x13,
     DW_FORM_ref8 = 0x14,
     DW_FORM_ref_udata = 0x15,
-    DW_FORM_indirect = 0x16
+    DW_FORM_indirect = 0x16,
+DW_FORM_exprloc = 0x18,
+DW_FORM_flag_present = 0x19,
+DW_FORM_ref_sig8 = 0x1a,
+DW_FORM_sec_offset = 0x1b,
+DW_FORM_sig8 = 0x1c,
+
   };
 
 /* Attribute names and codes.  */
@@ -382,7 +394,22 @@
     /* PGI (STMicroelectronics) extensions.  */
     DW_AT_PGI_lbase    = 0x3a00,
     DW_AT_PGI_soffset  = 0x3a01,
-    DW_AT_PGI_lstride  = 0x3a02
+    DW_AT_PGI_lstride  = 0x3a02,
+DW_AT_GNU_exclusive_locks_required = 0x3a03,
+DW_AT_GNU_guarded_by = 0x3a04,
+DW_AT_GNU_guarded = 0x3a05,
+DW_AT_GNU_locks_excluded = 0x3a06,
+DW_AT_GNU_odr_signature = 0x3a07,
+DW_AT_GNU_pt_guarded_by = 0x3a08,
+DW_AT_GNU_pt_guarded = 0x3a09,
+DW_AT_GNU_shared_locks_required = 0x3a0a,
+DW_AT_GNU_template_name = 0x3a0b,
+DW_AT_const_expr = 0x3a0c,
+DW_AT_data_bit_offset = 0x3a0d,
+DW_AT_enum_class = 0x3a0e,
+DW_AT_linkage_name = 0x3a0f,
+DW_AT_main_subprogram = 0x3a10,
+DW_AT_signature = 0x3a11,
   };
 
 #define DW_AT_lo_user	0x2000	/* Implementation-defined range start.  */
@@ -544,6 +571,8 @@
     DW_OP_form_tls_address = 0x9b,
     DW_OP_call_frame_cfa = 0x9c,
     DW_OP_bit_piece = 0x9d,
+DW_OP_implicit_value = 0x9e,
+DW_OP_stack_value = 0x9f,
     /* GNU extensions.  */
     DW_OP_GNU_push_tls_address = 0xe0,
     /* The following is for marking variables that are uninitialized.  */
--- a/gcc/gimple.c	Mon Feb 15 14:58:24 2010 +0900
+++ b/gcc/gimple.c	Mon Feb 15 17:22:24 2010 +0900
@@ -40,12 +40,6 @@
 #include "alias.h"
 #include "demangle.h"
 
-#define DEFGSCODE(SYM, NAME, STRUCT)    NAME,
-const char *const gimple_code_name[] = {
-#include "gimple.def"
-};
-#undef DEFGSCODE
-
 /* Global type table.  FIXME lto, it should be possible to re-use some
    of the type hashing routines in tree.c (type_hash_canon, type_hash_lookup,
    etc), but those assume that types were built with the various