]> de.git.xonotic.org Git - xonotic/gmqcc.git/commitdiff
Convenience function to store a predefined string in the qc string area
authorWolfgang Bumiller <wolfgang.linux@bumiller.com>
Fri, 4 May 2012 22:14:10 +0000 (00:14 +0200)
committerWolfgang (Blub) Bumiller <blub@speed.at>
Wed, 9 May 2012 13:03:19 +0000 (15:03 +0200)
code.c
gmqcc.h

diff --git a/code.c b/code.c
index 81e8aa62077e00cdd7c7e95c3cceac8ff13d965e..b3cc0b825bb03ec6369eb528102c817d3a4f37e2 100644 (file)
--- a/code.c
+++ b/code.c
@@ -103,6 +103,16 @@ void code_init() {
     code_statements_add(empty_statement);
 }
 
+uint32_t code_genstring(const char *str)
+{
+    uint32_t off = code_chars_elements;
+    while (*str) {
+        code_chars_add(*str);
+        ++str;
+    }
+    return off;
+}
+
 void code_test() {
     prog_section_def       d1 = { TYPE_VOID,     28, 1 };
     prog_section_def       d2 = { TYPE_FUNCTION, 29, 8 };
diff --git a/gmqcc.h b/gmqcc.h
index e09f17589d93402a61fc03d1d523a4ae9acab91e..7178c8f3cac0fb69accb3841c9cb763be7880d1f 100644 (file)
--- a/gmqcc.h
+++ b/gmqcc.h
@@ -533,8 +533,9 @@ VECTOR_PROT(char,                   code_chars     );
  * code_write -- writes out the compiled file
  * code_init  -- prepares the code file
  */
-bool code_write (const char *filename);
-void code_init  ();
+bool     code_write     (const char *filename);
+void     code_init      ();
+uint32_t code_genstring (const char *string);
 
 /*===================================================================*/
 /*========================= assembler.c =============================*/