commit-womb
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[commit-womb] gcc_brainfuck ChangeLog Make-lang.in brainfuck-...


From: Giuseppe Scrivano
Subject: [commit-womb] gcc_brainfuck ChangeLog Make-lang.in brainfuck-...
Date: Sun, 17 Feb 2013 02:51:50 +0000

CVSROOT:        /sources/womb
Module name:    gcc_brainfuck
Changes by:     Giuseppe Scrivano <gscrivano>   13/02/17 02:51:50

Modified files:
        .              : ChangeLog Make-lang.in brainfuck-lang.c 

Log message:
        gcc_brainfuck: Use the latest GCC

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gcc_brainfuck/ChangeLog?cvsroot=womb&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/gcc_brainfuck/Make-lang.in?cvsroot=womb&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/gcc_brainfuck/brainfuck-lang.c?cvsroot=womb&r1=1.2&r2=1.3

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/womb/gcc_brainfuck/ChangeLog,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- ChangeLog   23 Feb 2011 10:07:04 -0000      1.1
+++ ChangeLog   17 Feb 2013 02:51:50 -0000      1.2
@@ -1,3 +1,8 @@
+2013-02-16  Giuseppe Scrivano  <address@hidden>
+
+       * brainfuck-lang.c: Work correctly with last GCC version.
+       * Makefile-lang.in: Likewise.
+
 2011-02-23  Jose E. Marchesi  <address@hidden>
 
        * brainfuck-lang.c (brainfuck_langhook_parse_file): Avoid a

Index: Make-lang.in
===================================================================
RCS file: /sources/womb/gcc_brainfuck/Make-lang.in,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- Make-lang.in        18 Nov 2009 16:43:25 -0000      1.1
+++ Make-lang.in        17 Feb 2013 02:51:50 -0000      1.2
@@ -1,3 +1,4 @@
+# Make-lang.in -- Top level -*- makefile -*- fragment for gcc brainfuck.
 .PHONY: brainfuck
 
 brainfuck: bf1$(exeext)
@@ -6,14 +7,19 @@
 # Use maximal warnings for this front end.
 brainfuck-warn = $(STRICT_WARN)
 
-BRAINFUCK_OBJS = brainfuck/brainfuck-lang.o attribs.o
+BRAINFUCK_OBJS = brainfuck/brainfuck-lang.o
 
-brainfuck_OBJS = $(BRAINFUCK_OBJS)
+brainfuck_OBJS = $(GCC_OBJS) $(BRAINFUCK_OBJS)
 
 bf1$(exeext): $(BRAINFUCK_OBJS) attribs.o $(BACKEND) $(LIBDEPS)
-             $(CC) $(ALL_CFLAGS) -o $@ \
-             $(BRAINFUCK_OBJS) $(BACKEND) $(LIBS) $(BACKENDLIBS)
+       +$(CXX) $(ALL_CXXFLAGS) $(LDFLAGS) -o $@ \
+             $(BRAINFUCK_OBJS) attribs.o $(BACKEND) $(LIBS) $(BACKENDLIBS)
 
+brainfuck/tfspec.o: $(srcdir)/brainfuck/tfspec.c $(SYSTEM_H) coretypes.h 
$(TM_H) $(GCC_H) \
+    $(CONFIG_H) opts.h
+       (SHLIB='$(SHLIB)'; \
+       $(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) $(DRIVER_DEFINES) \
+               $(INCLUDES) $(srcdir)/brainfuck/tfspec.c)
 
 brainfuck/tfspec.o: $(srcdir)/brainfuck/tfspec.c $(SYSTEM_H) coretypes.h 
$(TM_H) $(GCC_H) $(CONFIG_H) $(TREE_H)
 

Index: brainfuck-lang.c
===================================================================
RCS file: /sources/womb/gcc_brainfuck/brainfuck-lang.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- brainfuck-lang.c    23 Feb 2011 10:07:04 -0000      1.2
+++ brainfuck-lang.c    17 Feb 2013 02:51:50 -0000      1.3
@@ -60,6 +60,7 @@
 #undef LANG_HOOKS_WRITE_GLOBALS
 #undef LANG_HOOKS_GIMPLIFY_EXPR
 #undef LANG_HOOKS_DECL_PRINTABLE_NAME
+#undef LANG_HOOKS_OPTION_LANG_MASK
 
 #define LANG_HOOKS_NAME "GNU brainfuck"
 #define LANG_HOOKS_INIT brainfuck_init
@@ -77,6 +78,7 @@
 #define LANG_HOOKS_POST_OPTIONS                brainfuck_langhook_post_options
 #define LANG_HOOKS_PARSE_FILE          brainfuck_langhook_parse_file
 #define LANG_HOOKS_WRITE_GLOBALS       brainfuck_langhook_write_globals
+#define LANG_HOOKS_OPTION_LANG_MASK    brainfuck_langhook_option_lang_mask
 
 
 static bool
@@ -84,36 +86,30 @@
 {
   build_common_tree_nodes (false, false);
 
-  /* The sizetype may be "unsigned long" or "unsigned long long".  */
-  if (TYPE_MODE (long_unsigned_type_node) == ptr_mode)
-    size_type_node = long_unsigned_type_node;
-  else if (TYPE_MODE (long_long_unsigned_type_node) == ptr_mode)
-    size_type_node = long_long_unsigned_type_node;
-  else
-    size_type_node = long_unsigned_type_node;
-  set_sizetype (size_type_node);
-
-  build_common_tree_nodes_2 (0);
-  build_common_builtin_nodes ();
-
   void_list_node = build_tree_list (NULL_TREE, void_type_node);
+  build_common_builtin_nodes ();
 
   return true;
 }
 
+
 static unsigned int
-brainfuck_langhook_init_options (unsigned int argc ATTRIBUTE_UNUSED,
-                                 const char** argv ATTRIBUTE_UNUSED)
+brainfuck_langhook_option_lang_mask (void)
 {
   return CL_Brainfuck;
 }
 
-static int
-brainfuck_langhook_handle_option (size_t scode ATTRIBUTE_UNUSED,
-                                  const char *arg ATTRIBUTE_UNUSED,
-                                  int value ATTRIBUTE_UNUSED)
+static void
+brainfuck_langhook_init_options (unsigned int argc ATTRIBUTE_UNUSED,
+                                 cl_decoded_option* argv ATTRIBUTE_UNUSED)
+{
+}
+
+static bool brainfuck_langhook_handle_option (unsigned int a ATTRIBUTE_UNUSED, 
const char *b ATTRIBUTE_UNUSED,
+                                              int c ATTRIBUTE_UNUSED, int d 
ATTRIBUTE_UNUSED, unsigned int e ATTRIBUTE_UNUSED,
+                                              const cl_option_handlers* 
handler ATTRIBUTE_UNUSED)
 {
-  return 0;
+  return false;
 }
 
 static bool
@@ -212,13 +208,10 @@
         case '[':
           child = read_tree (finput, header, deref);
           exit = build1 (EXIT_EXPR, char_type_node, 
-                         build3 (COND_EXPR, char_type_node,
-                                 deref,
-                                 build_int_cst (char_type_node, 0),
-                                 build_int_cst (char_type_node, 1)));
+                         build2 (EQ_EXPR, char_type_node, deref,
+                                 build_int_cst (char_type_node, 0)));
 
-          body = build2 (COMPOUND_EXPR, char_type_node, 
-                         exit, child);
+          body = build2 (COMPOUND_EXPR, char_type_node, exit, child);
           append_to_statement_list (build1 (LOOP_EXPR, char_type_node, body),
                                     &func);
           break;
@@ -237,7 +230,7 @@
 }
 
 static void
-brainfuck_langhook_parse_file (int set_yy_debug ATTRIBUTE_UNUSED)
+brainfuck_langhook_parse_file ()
 {
   FILE *finput = NULL;
   tree func = NULL_TREE;
@@ -254,6 +247,8 @@
                         fold_build1 (ADDR_EXPR, build_pointer_type 
(char_type_node),
                                      data));
 
+  append_to_statement_list (data, &func);
+  append_to_statement_list (header, &func);
   append_to_statement_list (assign, &func);
 
   finput = main_input_filename ?
@@ -261,8 +256,11 @@
 
   append_to_statement_list (read_tree (finput, header, deref), &func);
 
-  varpool_finalize_decl (header);
-  varpool_finalize_decl (data);
+  TREE_STATIC(header) = 1;
+  TREE_STATIC(data) = 1;
+
+  wrapup_global_declarations (&header, 1);
+  wrapup_global_declarations (&data, 1);
 
   DECL_ARTIFICIAL (decl) = 1;
   DECL_RESULT (decl) =  build_decl (input_location, RESULT_DECL, NULL_TREE,
@@ -271,8 +269,6 @@
   TREE_USED (decl) = 1;
   DECL_SAVED_TREE (decl) = func;
   DECL_UNINLINABLE (decl) = 1;
-  TREE_STATIC (header) = 1; 
-  TREE_STATIC (data) = 1; 
 
   DECL_INITIAL (decl) = make_node (BLOCK);
   TREE_USED (DECL_INITIAL (decl)) = 1;
@@ -286,7 +282,7 @@
   if (finput != stdin)
     fclose (finput);
 
-  cgraph_finalize_compilation_unit ();
+  finalize_compilation_unit ();
 }
 
 static void
@@ -307,10 +303,10 @@
   gcc_unreachable ();
 }
 
-static int
+static bool
 brainfuck_langhook_global_bindings_p (void)
 {
-  return current_function_decl == NULL ? 1 : 0;
+  return current_function_decl == NULL;
 }
 
 
@@ -387,7 +383,7 @@
                          gimple_seq *pre_p ATTRIBUTE_UNUSED,
                          gimple_seq *post_p ATTRIBUTE_UNUSED)
 {
-  return 0;
+  return GS_UNHANDLED;
 }
 
 const char *



reply via email to

[Prev in Thread] Current Thread [Next in Thread]