[llvm-commits] [hlvm] r38129 - in /hlvm/trunk/hlvm/CodeGen: LLVMGenerator.cpp program.cxx string.cxx

Reid Spencer reid at x10sys.com
Sat Jul 7 17:00:08 PDT 2007


Author: reid
Date: Sat Jul  7 19:00:07 2007
New Revision: 38129

URL: http://llvm.org/viewvc/llvm-project?rev=38129&view=rev
Log:
Add files that are source to the llvm2cpp code generator.

Added:
    hlvm/trunk/hlvm/CodeGen/program.cxx
    hlvm/trunk/hlvm/CodeGen/string.cxx
Modified:
    hlvm/trunk/hlvm/CodeGen/LLVMGenerator.cpp

Modified: hlvm/trunk/hlvm/CodeGen/LLVMGenerator.cpp
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/hlvm/CodeGen/LLVMGenerator.cpp?rev=38129&r1=38128&r2=38129&view=diff

==============================================================================
--- hlvm/trunk/hlvm/CodeGen/LLVMGenerator.cpp (original)
+++ hlvm/trunk/hlvm/CodeGen/LLVMGenerator.cpp Sat Jul  7 19:00:07 2007
@@ -53,12 +53,11 @@
 #include <llvm/PassManager.h>
 #include <llvm/Assembly/PrintModulePass.h>
 
-//namespace {
-//using namespace llvm;
-//include <hlvm/CodeGen/string_decl.inc>
-//include <hlvm/CodeGen/program.inc>
-//}
-
+namespace {
+using namespace llvm;
+#include <hlvm/CodeGen/string_decl.inc>
+#include <hlvm/CodeGen/program.inc>
+}
 
 namespace 
 {
@@ -466,10 +465,8 @@
 
 }
 
-namespace hlvm {
-
 void
-generateBytecode(AST* tree,std::ostream& output)
+hlvm::generateBytecode(AST* tree,std::ostream& output)
 {
   hlvm::PassManager* PM = hlvm::PassManager::create();
   LLVMGeneratorPass genPass(tree);
@@ -482,7 +479,7 @@
 }
 
 void
-generateAssembly(AST* tree, std::ostream& output)
+hlvm::generateAssembly(AST* tree, std::ostream& output)
 {
   hlvm::PassManager* PM = hlvm::PassManager::create();
   LLVMGeneratorPass genPass(tree);
@@ -495,5 +492,3 @@
   delete mod;
   delete PM;
 }
-
-}

Added: hlvm/trunk/hlvm/CodeGen/program.cxx
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/hlvm/CodeGen/program.cxx?rev=38129&view=auto

==============================================================================
--- hlvm/trunk/hlvm/CodeGen/program.cxx (added)
+++ hlvm/trunk/hlvm/CodeGen/program.cxx Sat Jul  7 19:00:07 2007
@@ -0,0 +1,20 @@
+#include "string.cxx"
+
+extern "C" {
+
+struct _hlvm_program_args {
+  uint32_t argc;
+  _hlvm_string* argv;
+};
+
+typedef uint32_t (*_hlvm_program_type)(_hlvm_program_args* args);
+
+struct _hlvm_programs_element {
+  void* program_type;
+  _hlvm_string program_name;
+  _hlvm_program_type program_entry;
+};
+
+_hlvm_programs_element _hlvm_programs[1];
+
+}

Added: hlvm/trunk/hlvm/CodeGen/string.cxx
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/hlvm/CodeGen/string.cxx?rev=38129&view=auto

==============================================================================
--- hlvm/trunk/hlvm/CodeGen/string.cxx (added)
+++ hlvm/trunk/hlvm/CodeGen/string.cxx Sat Jul  7 19:00:07 2007
@@ -0,0 +1,17 @@
+#include <stdint.h>
+
+extern "C" {
+
+typedef uint32_t _hlvm_size;
+typedef uint16_t _hlvm_char;
+
+struct _hlvm_string {
+  _hlvm_size len;
+  _hlvm_char* ptr;
+};
+
+extern void _hlvm_string_clear(_hlvm_string* str); 
+
+_hlvm_string astring;
+
+}





More information about the llvm-commits mailing list