From: <dan...@us...> - 2008-03-27 10:53:44
|
Revision: 1153 http://cegcc.svn.sourceforge.net/cegcc/?rev=1153&view=rev Author: dannybackx Date: 2008-03-27 03:53:39 -0700 (Thu, 27 Mar 2008) Log Message: ----------- Fix gcc 4.3.0 TARGET_ATTRIBUTE_TABLE bug. This gets exception handling to work again, and probably many other things. Modified Paths: -------------- trunk/cegcc/src/gcc-4.3.0/ChangeLog.ce trunk/cegcc/src/gcc-4.3.0/gcc/config/arm/arm.c trunk/cegcc/src/gcc-4.3.0/gcc/target-def.h Modified: trunk/cegcc/src/gcc-4.3.0/ChangeLog.ce =================================================================== --- trunk/cegcc/src/gcc-4.3.0/ChangeLog.ce 2008-03-25 13:57:00 UTC (rev 1152) +++ trunk/cegcc/src/gcc-4.3.0/ChangeLog.ce 2008-03-27 10:53:39 UTC (rev 1153) @@ -1,3 +1,11 @@ +2008-03-27 Danny Backx <dan...@us...> + + * gcc/target-def.h: Fix new gcc 4.3.0 bug, this file needs to make + sure TARGET_ATTRIBUTE_TABLE is only defined as NULL if it isn't + already defined. + * gcc/config/arm/arm.c: Remove debug code that I accidentally + committed last week. + 2008-03-22 Danny Backx <dan...@us...> * Import gcc-4.3.0 source tree. Modified: trunk/cegcc/src/gcc-4.3.0/gcc/config/arm/arm.c =================================================================== --- trunk/cegcc/src/gcc-4.3.0/gcc/config/arm/arm.c 2008-03-25 13:57:00 UTC (rev 1152) +++ trunk/cegcc/src/gcc-4.3.0/gcc/config/arm/arm.c 2008-03-27 10:53:39 UTC (rev 1153) @@ -18803,35 +18803,6 @@ tree attr, a2; attr = DECL_ATTRIBUTES (decl); - { -// tree format_num_expr = TREE_VALUE (TREE_CHAIN (attr)); -// tree format_num_expr = TREE_VALUE (attr); -// tree format_num_expr = (attr); - -// deze doet iets zinnig : -// tree format_num_expr = TREE_VALUE(decl); -// exarg.c: In function 'handler': -// exarg.c:13: internal compiler error: tree check: expected tree_list, have function_decl in arm_pe_exception_handler, at config/arm/arm.c:15568 -// - -// a2 = lookup_attribute ("__exception_handler__", decl); -// tree format_num_expr = TREE_VALUE(a2); - -// tree format_num_expr = TREE_VALUE(TREE_CHAIN(decl)); -// tree format_num_expr = TREE_VALUE(decl); - tree format_num_expr = decl; - -#if 0 - fprintf(stderr, "Yow arm_pe_exception_handler %p\n", format_num_expr); - if (TREE_CODE(format_num_expr) == STRING_CST) { - fprintf(stderr, "arm_pe_exception_handler : string\n"); - } else if (TREE_CODE(format_num_expr) == INTEGER_CST) { - fprintf(stderr, "arm_pe_exception_handler : integer\n"); - } else { - fprintf(stderr, "arm_pe_exception_handler : unknown\n"); - } -#endif - } if (! attr) return NULL; a2 = lookup_attribute ("__exception_handler__", attr); @@ -18871,19 +18842,6 @@ in the right field as we do with the exception handler. */ tree attr = NULL_TREE; -// fprintf(stderr, "arm_pe_handle_exception_handler_attribute: arg %p no_add_attrs %d\n", -// flags, *no_add_attrs); - - tree format_num_expr = TREE_VALUE (TREE_CHAIN (args)); -#if 0 - if (TREE_CODE(format_num_expr) == STRING_CST) { - fprintf(stderr, "arm_pe_handle_exception_handler_attribute : string\n"); - } else if (TREE_CODE(format_num_expr) == INTEGER_CST) { - fprintf(stderr, "arm_pe_handle_exception_handler_attribute : integer\n"); - } else { - fprintf(stderr, "arm_pe_handle_exception_handler_attribute : unknown\n"); - } -#endif attr = tree_cons (get_identifier ("exception_handler"), args, attr); } else Modified: trunk/cegcc/src/gcc-4.3.0/gcc/target-def.h =================================================================== --- trunk/cegcc/src/gcc-4.3.0/gcc/target-def.h 2008-03-25 13:57:00 UTC (rev 1152) +++ trunk/cegcc/src/gcc-4.3.0/gcc/target-def.h 2008-03-27 10:53:39 UTC (rev 1153) @@ -391,7 +391,9 @@ /* In tree.c. */ #define TARGET_MERGE_DECL_ATTRIBUTES merge_decl_attributes #define TARGET_MERGE_TYPE_ATTRIBUTES merge_type_attributes +#ifndef TARGET_ATTRIBUTE_TABLE #define TARGET_ATTRIBUTE_TABLE NULL +#endif /* In cse.c. */ #define TARGET_ADDRESS_COST default_address_cost This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |