[Liboil-commit] orc/orc.c orc/orc.h orc/orcexecutor.c orc/orcopcodes.c orc/orcprogram-linux.c orc/orcprogram-powerpc.c orc/orcprogram-x86.c orc/orcprogram.c orc/orcprogram.h orc/orcrule.c orc/orctype.c

David Schleef ds at kemper.freedesktop.org
Thu May 22 11:42:18 PDT 2008


 orc/orc.c                |    1 
 orc/orc.h                |    8 +++
 orc/orcexecutor.c        |    1 
 orc/orcopcodes.c         |    1 
 orc/orcprogram-linux.c   |   13 ++---
 orc/orcprogram-powerpc.c |   15 ++----
 orc/orcprogram-x86.c     |  115 +++++++++++++++++++++++------------------------
 orc/orcprogram.c         |   37 +++++++--------
 orc/orcprogram.h         |   10 ++++
 orc/orcrule.c            |    1 
 orc/orctype.c            |    1 
 11 files changed, 105 insertions(+), 98 deletions(-)

New commits:
commit 50aa4a62b9c1154c06236f12d364bac97a2a15f7
Author: David Schleef <ds at ginger.bigkitten.com>
Date:   Thu May 22 11:42:00 2008 -0700

    [orc] remove glib dependency

diff --git a/orc/orc.c b/orc/orc.c
index 9d009e1..6094adb 100644
--- a/orc/orc.c
+++ b/orc/orc.c
@@ -1,7 +1,6 @@
 
 #include "config.h"
 
-#include <glib.h>
 #include <stdio.h>
 #include <string.h>
 #include <stdlib.h>
diff --git a/orc/orc.h b/orc/orc.h
new file mode 100644
index 0000000..ec27285
--- /dev/null
+++ b/orc/orc.h
@@ -0,0 +1,8 @@
+
+#ifndef _ORC_ORC_H_
+#define _ORC_ORC_H_
+
+#include <orc/orcprogram.h>
+
+#endif
+
diff --git a/orc/orcexecutor.c b/orc/orcexecutor.c
index 7395ed4..732e0f4 100644
--- a/orc/orcexecutor.c
+++ b/orc/orcexecutor.c
@@ -1,7 +1,6 @@
 
 #include "config.h"
 
-#include <glib.h>
 #include <stdio.h>
 #include <string.h>
 #include <stdlib.h>
diff --git a/orc/orcopcodes.c b/orc/orcopcodes.c
index d82757d..1ec3ea7 100644
--- a/orc/orcopcodes.c
+++ b/orc/orcopcodes.c
@@ -1,7 +1,6 @@
 
 #include "config.h"
 
-#include <glib.h>
 #include <stdio.h>
 #include <string.h>
 #include <stdlib.h>
diff --git a/orc/orcprogram-linux.c b/orc/orcprogram-linux.c
index 3109ceb..d590046 100644
--- a/orc/orcprogram-linux.c
+++ b/orc/orcprogram-linux.c
@@ -1,7 +1,6 @@
 
 #include "config.h"
 
-#include <glib.h>
 #include <stdio.h>
 #include <string.h>
 #include <stdlib.h>
@@ -18,33 +17,31 @@
 void
 orc_program_allocate_codemem (OrcProgram *program)
 {
-  char *filename;
+  char filename[32] = "/tmp/orcexecXXXXXX";
   int fd;
-  GError *error = NULL;
 
-  fd = g_file_open_tmp ("liboilexecXXXXXX", &filename, &error);
+  fd = mkstemp (filename);
   if (fd == -1) {
     /* FIXME oh crap */
-    g_print("failed to create temp file\n");
+    printf("failed to create temp file\n");
     program->error = TRUE;
     return;
   }
   unlink (filename);
-  g_free (filename);
 
   ftruncate (fd, SIZE);
 
   program->code = mmap (NULL, SIZE, PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0);
   if (program->code == MAP_FAILED) {
     /* FIXME oh crap */
-    g_print("failed to create write map\n");
+    printf("failed to create write map\n");
     program->error = TRUE;
     return;
   }
   program->code_exec = mmap (NULL, SIZE, PROT_READ|PROT_EXEC, MAP_SHARED, fd, 0);
   if (program->code_exec == MAP_FAILED) {
     /* FIXME oh crap */
-    g_print("failed to create exec map\n");
+    printf("failed to create exec map\n");
     program->error = TRUE;
     return;
   }
diff --git a/orc/orcprogram-powerpc.c b/orc/orcprogram-powerpc.c
index 9ed4683..2311899 100644
--- a/orc/orcprogram-powerpc.c
+++ b/orc/orcprogram-powerpc.c
@@ -1,7 +1,6 @@
 
 #include "config.h"
 
-#include <glib.h>
 #include <stdio.h>
 #include <string.h>
 #include <stdlib.h>
@@ -147,7 +146,7 @@ orc_program_powerpc_allocate_register (OrcProgram *program, int data_reg)
       }
     }
   }
-  g_print("register overflow\n");
+  printf("register overflow\n");
   return 0;
 }
 
@@ -384,7 +383,7 @@ powerpc_load_constants (OrcProgram *program)
           powerpc_emit_lwz (program,
               program->vars[i].ptr_register,
               POWERPC_R3,
-              (int)G_STRUCT_OFFSET(OrcExecutor, arrays[i]));
+              (int)ORC_STRUCT_OFFSET(OrcExecutor, arrays[i]));
         } else {
           /* FIXME */
           printf("ERROR");
@@ -478,7 +477,7 @@ orc_program_assemble_powerpc (OrcProgram *program)
   powerpc_emit_prologue (program);
 
   powerpc_emit_lwz (program, POWERPC_R0, POWERPC_R3,
-      (int)G_STRUCT_OFFSET(OrcExecutor, n));
+      (int)ORC_STRUCT_OFFSET(OrcExecutor, n));
   powerpc_emit_srawi (program, POWERPC_R0, POWERPC_R0,
       program->loop_shift, 1);
 
@@ -674,7 +673,7 @@ orc_program_powerpc_register_rules (void)
 
 void powerpc_emit_ret (OrcProgram *program)
 {
-  g_print("  ret\n");
+  printf("  ret\n");
   //*program->codeptr++ = 0xc3;
 }
 
@@ -695,7 +694,7 @@ powerpc_add_label (OrcProgram *program, unsigned char *ptr, int label)
 
 void powerpc_emit_beq (OrcProgram *program, int label)
 {
-  g_print("  ble- .L%d\n", label);
+  printf("  ble- .L%d\n", label);
 
   powerpc_add_fixup (program, program->codeptr, label);
   powerpc_emit (program, 0x40810000);
@@ -703,7 +702,7 @@ void powerpc_emit_beq (OrcProgram *program, int label)
 
 void powerpc_emit_bne (OrcProgram *program, int label)
 {
-  g_print("  bdnz+ .L%d\n", label);
+  printf("  bdnz+ .L%d\n", label);
 
   powerpc_add_fixup (program, program->codeptr, label);
   powerpc_emit (program, 0x42000000);
@@ -711,7 +710,7 @@ void powerpc_emit_bne (OrcProgram *program, int label)
 
 void powerpc_emit_label (OrcProgram *program, int label)
 {
-  g_print(".L%d:\n", label);
+  printf(".L%d:\n", label);
 
   powerpc_add_label (program, program->codeptr, label);
 }
diff --git a/orc/orcprogram-x86.c b/orc/orcprogram-x86.c
index a0829a0..23707a1 100644
--- a/orc/orcprogram-x86.c
+++ b/orc/orcprogram-x86.c
@@ -1,7 +1,6 @@
 
 #include "config.h"
 
-#include <glib.h>
 #include <stdio.h>
 #include <string.h>
 #include <stdlib.h>
@@ -149,7 +148,7 @@ orc_program_x86_allocate_register (OrcProgram *program, int data_reg)
       }
     }
   }
-  g_print("register overflow\n");
+  printf("register overflow\n");
   return 0;
 }
 
@@ -160,8 +159,8 @@ void orc_program_dump (OrcProgram *program);
 void
 x86_emit_prologue (OrcProgram *program)
 {
-  g_print(".global test\n");
-  g_print("test:\n");
+  printf(".global test\n");
+  printf("test:\n");
   x86_emit_push (program, 4, X86_EBP);
   x86_emit_mov_memoffset_reg (program, 4, 8, X86_ESP, X86_EBP);
   if (program->used_regs[X86_EDI]) {
@@ -245,7 +244,7 @@ x86_load_constants (OrcProgram *program)
       case ORC_VAR_TYPE_DEST:
         if (program->vars[i].ptr_register) {
           x86_emit_mov_memoffset_reg (program, 4,
-              (int)G_STRUCT_OFFSET(OrcExecutor, arrays[i]), X86_EBP,
+              (int)ORC_STRUCT_OFFSET(OrcExecutor, arrays[i]), X86_EBP,
               program->vars[i].ptr_register);
         } else {
           /* FIXME */
@@ -332,12 +331,12 @@ orc_program_assemble_x86 (OrcProgram *program)
 
   x86_emit_prologue (program);
 
-  x86_emit_mov_memoffset_reg (program, 4, (int)G_STRUCT_OFFSET(OrcExecutor,n),
+  x86_emit_mov_memoffset_reg (program, 4, (int)ORC_STRUCT_OFFSET(OrcExecutor,n),
       X86_EBP, X86_ECX);
 
   x86_emit_sar_imm_reg (program, 4, program->loop_shift, X86_ECX);
   x86_emit_mov_reg_memoffset (program, 4, X86_ECX,
-      (int)G_STRUCT_OFFSET(OrcExecutor,counter), X86_EBP);
+      (int)ORC_STRUCT_OFFSET(OrcExecutor,counter), X86_EBP);
 
   x86_emit_test_reg_reg (program, 4, X86_ECX, X86_ECX);
 
@@ -411,14 +410,14 @@ orc_program_assemble_x86 (OrcProgram *program)
       } else {
         x86_emit_add_imm_memoffset (program, 4,
             orc_variable_get_size(program->vars + k) * program->n_per_loop,
-            (int)G_STRUCT_OFFSET(OrcExecutor, arrays[k]),
+            (int)ORC_STRUCT_OFFSET(OrcExecutor, arrays[k]),
             X86_EBP);
       }
     }
   }
 
   x86_emit_dec_memoffset (program, 4,
-      (int)G_STRUCT_OFFSET(OrcExecutor,counter),
+      (int)ORC_STRUCT_OFFSET(OrcExecutor,counter),
       X86_EBP);
   x86_emit_jne (program, 0);
   x86_emit_label (program, 1);
@@ -446,7 +445,7 @@ x86_rule_add_s16 (OrcProgram *p, void *user, OrcInstruction *insn)
 {
   if (insn->rule_flag == ORC_RULE_REG_IMM) {
     int value = p->vars[insn->args[2]].s16;
-    g_print("  addw $%d, %%%s\n", value,
+    printf("  addw $%d, %%%s\n", value,
         x86_get_regname_16(p->vars[insn->args[0]].alloc));
 
     if (value >= -128 && value < 128) {
@@ -462,7 +461,7 @@ x86_rule_add_s16 (OrcProgram *p, void *user, OrcInstruction *insn)
       *p->codeptr++ = value >> 8;
     }
   } else {
-    g_print("  addw %%%s, %%%s\n",
+    printf("  addw %%%s, %%%s\n",
         x86_get_regname_16(p->vars[insn->args[2]].alloc),
         x86_get_regname_16(p->vars[insn->args[0]].alloc));
 
@@ -476,7 +475,7 @@ x86_rule_add_s16 (OrcProgram *p, void *user, OrcInstruction *insn)
 static void
 x86_rule_sub_s16 (OrcProgram *p, void *user, OrcInstruction *insn)
 {
-  g_print("  subw %%%s, %%%s\n",
+  printf("  subw %%%s, %%%s\n",
       x86_get_regname_16(p->vars[insn->args[2]].alloc),
       x86_get_regname_16(p->vars[insn->args[0]].alloc));
 
@@ -489,7 +488,7 @@ x86_rule_sub_s16 (OrcProgram *p, void *user, OrcInstruction *insn)
 static void
 x86_rule_mul_s16 (OrcProgram *p, void *user, OrcInstruction *insn)
 {
-  g_print("  imulw %%%s, %%%s\n",
+  printf("  imulw %%%s, %%%s\n",
       x86_get_regname_16(p->vars[insn->args[2]].alloc),
       x86_get_regname_16(p->vars[insn->args[0]].alloc));
 
@@ -505,7 +504,7 @@ x86_rule_lshift_s16 (OrcProgram *p, void *user, OrcInstruction *insn)
 {
   x86_emit_mov_reg_reg(p, 4, p->vars[insn->args[2]].alloc, X86_ECX);
 
-  g_print("  shlw %%cl, %%%s\n",
+  printf("  shlw %%cl, %%%s\n",
       x86_get_regname_16(p->vars[insn->args[0]].alloc));
 
   *p->codeptr++ = 0x66;
@@ -517,7 +516,7 @@ static void
 x86_rule_rshift_s16 (OrcProgram *p, void *user, OrcInstruction *insn)
 {
   if (insn->rule_flag == ORC_RULE_REG_IMM) {
-    g_print("  sarw $%d, %%%s\n",
+    printf("  sarw $%d, %%%s\n",
         p->vars[insn->args[2]].s16,
         x86_get_regname_16(p->vars[insn->args[0]].alloc));
 
@@ -534,7 +533,7 @@ x86_rule_rshift_s16 (OrcProgram *p, void *user, OrcInstruction *insn)
   } else {
     x86_emit_mov_reg_reg(p, 4, p->vars[insn->args[2]].alloc, X86_ECX);
 
-    g_print("  sarw %%cl, %%%s\n",
+    printf("  sarw %%cl, %%%s\n",
         x86_get_regname_16(p->vars[insn->args[0]].alloc));
 
     *p->codeptr++ = 0x66;
@@ -568,7 +567,7 @@ static void
 mmx_emit_loadi_s16 (OrcProgram *p, int reg, int value)
 {
   if (value == 0) {
-    g_print("  pxor %%%s, %%%s\n", x86_get_regname_mmx(reg),
+    printf("  pxor %%%s, %%%s\n", x86_get_regname_mmx(reg),
         x86_get_regname_mmx(reg));
     *p->codeptr++ = 0x0f;
     *p->codeptr++ = 0xef;
@@ -576,12 +575,12 @@ mmx_emit_loadi_s16 (OrcProgram *p, int reg, int value)
   } else {
     x86_emit_mov_imm_reg (p, 4, value, X86_ECX);
 
-    g_print("  movd %%ecx, %%%s\n", x86_get_regname_mmx(reg));
+    printf("  movd %%ecx, %%%s\n", x86_get_regname_mmx(reg));
     *p->codeptr++ = 0x0f;
     *p->codeptr++ = 0x6e;
     x86_emit_modrm_reg (p, X86_ECX, reg);
 
-    g_print("  pshufw $0, %%%s, %%%s\n", x86_get_regname_mmx(reg),
+    printf("  pshufw $0, %%%s, %%%s\n", x86_get_regname_mmx(reg),
         x86_get_regname_mmx(reg));
 
     *p->codeptr++ = 0x0f;
@@ -601,7 +600,7 @@ mmx_rule_loadi_s16 (OrcProgram *p, void *user, OrcInstruction *insn)
 static void
 mmx_rule_add_s16 (OrcProgram *p, void *user, OrcInstruction *insn)
 {
-  g_print("  paddw %%%s, %%%s\n",
+  printf("  paddw %%%s, %%%s\n",
       x86_get_regname_mmx(p->vars[insn->args[2]].alloc),
       x86_get_regname_mmx(p->vars[insn->args[0]].alloc));
 
@@ -614,7 +613,7 @@ mmx_rule_add_s16 (OrcProgram *p, void *user, OrcInstruction *insn)
 static void
 mmx_rule_sub_s16 (OrcProgram *p, void *user, OrcInstruction *insn)
 {
-  g_print("  psubw %%%s, %%%s\n",
+  printf("  psubw %%%s, %%%s\n",
       x86_get_regname_mmx(p->vars[insn->args[2]].alloc),
       x86_get_regname_mmx(p->vars[insn->args[0]].alloc));
 
@@ -627,7 +626,7 @@ mmx_rule_sub_s16 (OrcProgram *p, void *user, OrcInstruction *insn)
 static void
 mmx_rule_mul_s16 (OrcProgram *p, void *user, OrcInstruction *insn)
 {
-  g_print("  pmullw %%%s, %%%s\n",
+  printf("  pmullw %%%s, %%%s\n",
       x86_get_regname_mmx(p->vars[insn->args[2]].alloc),
       x86_get_regname_mmx(p->vars[insn->args[0]].alloc));
 
@@ -641,7 +640,7 @@ static void
 mmx_rule_lshift_s16 (OrcProgram *p, void *user, OrcInstruction *insn)
 {
   if (p->vars[insn->args[2]].vartype == ORC_VAR_TYPE_CONST) {
-    g_print("  psllw $%d, %%%s\n",
+    printf("  psllw $%d, %%%s\n",
         p->vars[insn->args[2]].s16,
         x86_get_regname_mmx(p->vars[insn->args[0]].alloc));
 
@@ -651,7 +650,7 @@ mmx_rule_lshift_s16 (OrcProgram *p, void *user, OrcInstruction *insn)
     *p->codeptr++ = p->vars[insn->args[2]].s16;
   } else {
     /* FIXME this doesn't work quite right */
-    g_print("  psllw %%%s, %%%s\n",
+    printf("  psllw %%%s, %%%s\n",
         x86_get_regname_mmx(p->vars[insn->args[2]].alloc),
         x86_get_regname_mmx(p->vars[insn->args[0]].alloc));
 
@@ -666,7 +665,7 @@ static void
 mmx_rule_rshift_s16 (OrcProgram *p, void *user, OrcInstruction *insn)
 {
   if (p->vars[insn->args[2]].vartype == ORC_VAR_TYPE_CONST) {
-    g_print("  psraw $%d, %%%s\n",
+    printf("  psraw $%d, %%%s\n",
         p->vars[insn->args[2]].s16,
         x86_get_regname_mmx(p->vars[insn->args[0]].alloc));
 
@@ -676,7 +675,7 @@ mmx_rule_rshift_s16 (OrcProgram *p, void *user, OrcInstruction *insn)
     *p->codeptr++ = p->vars[insn->args[2]].s16;
   } else {
     /* FIXME this doesn't work quite right */
-    g_print("  psraw %%%s, %%%s\n",
+    printf("  psraw %%%s, %%%s\n",
         x86_get_regname_mmx(p->vars[insn->args[2]].alloc),
         x86_get_regname_mmx(p->vars[insn->args[0]].alloc));
 
@@ -718,11 +717,11 @@ x86_emit_push (OrcProgram *program, int size, int reg)
   if (size == 1) {
     program->error = 1;
   } else if (size == 2) {
-    g_print("  pushw %%%s\n", x86_get_regname_16(reg));
+    printf("  pushw %%%s\n", x86_get_regname_16(reg));
     *program->codeptr++ = 0x66;
     *program->codeptr++ = 0x50 + x86_get_regnum(reg);
   } else {
-    g_print("  pushl %%%s\n", x86_get_regname(reg));
+    printf("  pushl %%%s\n", x86_get_regname(reg));
     *program->codeptr++ = 0x50 + x86_get_regnum(reg);
   }
 }
@@ -734,11 +733,11 @@ x86_emit_pop (OrcProgram *program, int size, int reg)
   if (size == 1) {
     program->error = 1;
   } else if (size == 2) {
-    g_print("  popw %%%s\n", x86_get_regname_16(reg));
+    printf("  popw %%%s\n", x86_get_regname_16(reg));
     *program->codeptr++ = 0x66;
     *program->codeptr++ = 0x58 + x86_get_regnum(reg);
   } else {
-    g_print("  popl %%%s\n", x86_get_regname(reg));
+    printf("  popl %%%s\n", x86_get_regname(reg));
     *program->codeptr++ = 0x58 + x86_get_regnum(reg);
   }
 }
@@ -785,11 +784,11 @@ x86_emit_mov_memoffset_reg (OrcProgram *program, int size, int offset,
     int reg1, int reg2)
 {
   if (size == 2) {
-    g_print("  movw %d(%%%s), %%%s\n", offset, x86_get_regname(reg1),
+    printf("  movw %d(%%%s), %%%s\n", offset, x86_get_regname(reg1),
         x86_get_regname_16(reg2));
     *program->codeptr++ = 0x66;
   } else {
-    g_print("  movl %d(%%%s), %%%s\n", offset, x86_get_regname(reg1),
+    printf("  movl %d(%%%s), %%%s\n", offset, x86_get_regname(reg1),
         x86_get_regname(reg2));
   }
 
@@ -802,12 +801,12 @@ x86_emit_mov_memoffset_mmx (OrcProgram *program, int size, int offset,
     int reg1, int reg2)
 {
   if (size == 4) {
-    g_print("  movd %d(%%%s), %%%s\n", offset, x86_get_regname(reg1),
+    printf("  movd %d(%%%s), %%%s\n", offset, x86_get_regname(reg1),
         x86_get_regname_mmx(reg2));
     *program->codeptr++ = 0x0f;
     *program->codeptr++ = 0x6e;
   } else {
-    g_print("  movq %d(%%%s), %%%s\n", offset, x86_get_regname(reg1),
+    printf("  movq %d(%%%s), %%%s\n", offset, x86_get_regname(reg1),
         x86_get_regname_mmx(reg2));
     *program->codeptr++ = 0x0f;
     *program->codeptr++ = 0x6f;
@@ -820,11 +819,11 @@ x86_emit_mov_reg_memoffset (OrcProgram *program, int size, int reg1, int offset,
     int reg2)
 {
   if (size == 2) {
-    g_print("  movw %%%s, %d(%%%s)\n", x86_get_regname_16(reg1), offset,
+    printf("  movw %%%s, %d(%%%s)\n", x86_get_regname_16(reg1), offset,
         x86_get_regname(reg2));
     *program->codeptr++ = 0x66;
   } else {
-    g_print("  movl %%%s, %d(%%%s)\n", x86_get_regname(reg1), offset,
+    printf("  movl %%%s, %d(%%%s)\n", x86_get_regname(reg1), offset,
         x86_get_regname(reg2));
   }
 
@@ -837,12 +836,12 @@ x86_emit_mov_mmx_memoffset (OrcProgram *program, int size, int reg1, int offset,
     int reg2)
 {
   if (size == 4) {
-    g_print("  movd %%%s, %d(%%%s)\n", x86_get_regname_mmx(reg1), offset,
+    printf("  movd %%%s, %d(%%%s)\n", x86_get_regname_mmx(reg1), offset,
         x86_get_regname(reg2));
     *program->codeptr++ = 0x0f;
     *program->codeptr++ = 0x7e;
   } else {
-    g_print("  movq %%%s, %d(%%%s)\n", x86_get_regname_mmx(reg1), offset,
+    printf("  movq %%%s, %d(%%%s)\n", x86_get_regname_mmx(reg1), offset,
         x86_get_regname(reg2));
     *program->codeptr++ = 0x0f;
     *program->codeptr++ = 0x7f;
@@ -855,13 +854,13 @@ void
 x86_emit_mov_imm_reg (OrcProgram *program, int size, int value, int reg1)
 {
   if (size == 2) {
-    g_print("  movw $%d, %%%s\n", value, x86_get_regname_16(reg1));
+    printf("  movw $%d, %%%s\n", value, x86_get_regname_16(reg1));
     *program->codeptr++ = 0x66;
     *program->codeptr++ = 0xb8 + x86_get_regnum(reg1);
     *program->codeptr++ = (value & 0xff);
     *program->codeptr++ = ((value>>8) & 0xff);
   } else {
-    g_print("  movl $%d, %%%s\n", value, x86_get_regname(reg1));
+    printf("  movl $%d, %%%s\n", value, x86_get_regname(reg1));
     *program->codeptr++ = 0xb8 + x86_get_regnum(reg1);
     *program->codeptr++ = (value & 0xff);
     *program->codeptr++ = ((value>>8) & 0xff);
@@ -874,11 +873,11 @@ x86_emit_mov_imm_reg (OrcProgram *program, int size, int value, int reg1)
 void x86_emit_mov_reg_reg (OrcProgram *program, int size, int reg1, int reg2)
 {
   if (size == 2) {
-    g_print("  movw %%%s, %%%s\n", x86_get_regname_16(reg1),
+    printf("  movw %%%s, %%%s\n", x86_get_regname_16(reg1),
         x86_get_regname_16(reg2));
     *program->codeptr++ = 0x66;
   } else {
-    g_print("  movl %%%s, %%%s\n", x86_get_regname(reg1),
+    printf("  movl %%%s, %%%s\n", x86_get_regname(reg1),
         x86_get_regname(reg2));
   }
 
@@ -889,7 +888,7 @@ void x86_emit_mov_reg_reg (OrcProgram *program, int size, int reg1, int reg2)
 void x86_emit_mov_reg_mmx (OrcProgram *program, int reg1, int reg2)
 {
   /* FIXME */
-  g_print("  movd %%%s, %%%s\n", x86_get_regname(reg1),
+  printf("  movd %%%s, %%%s\n", x86_get_regname(reg1),
       x86_get_regname_mmx(reg2));
   *program->codeptr++ = 0x0f;
   *program->codeptr++ = 0x6e;
@@ -899,7 +898,7 @@ void x86_emit_mov_reg_mmx (OrcProgram *program, int reg1, int reg2)
 void x86_emit_mov_mmx_reg (OrcProgram *program, int reg1, int reg2)
 {
   /* FIXME */
-  g_print("  movd %%%s, %%%s\n", x86_get_regname_mmx(reg1),
+  printf("  movd %%%s, %%%s\n", x86_get_regname_mmx(reg1),
       x86_get_regname(reg2));
   *program->codeptr++ = 0x0f;
   *program->codeptr++ = 0x7e;
@@ -910,11 +909,11 @@ void
 x86_emit_test_reg_reg (OrcProgram *program, int size, int reg1, int reg2)
 {
   if (size == 2) {
-    g_print("  testw %%%s, %%%s\n", x86_get_regname_16(reg1),
+    printf("  testw %%%s, %%%s\n", x86_get_regname_16(reg1),
         x86_get_regname_16(reg2));
     *program->codeptr++ = 0x66;
   } else {
-    g_print("  testl %%%s, %%%s\n", x86_get_regname(reg1),
+    printf("  testl %%%s, %%%s\n", x86_get_regname(reg1),
         x86_get_regname(reg2));
   }
 
@@ -925,7 +924,7 @@ x86_emit_test_reg_reg (OrcProgram *program, int size, int reg1, int reg2)
 void
 x86_emit_sar_imm_reg (OrcProgram *program, int size, int value, int reg)
 {
-  g_print("  sarl $%d, %%%s\n", value, x86_get_regname(reg));
+  printf("  sarl $%d, %%%s\n", value, x86_get_regname(reg));
 
   if (value == 1) {
     *program->codeptr++ = 0xd1;
@@ -942,11 +941,11 @@ x86_emit_add_imm_memoffset (OrcProgram *program, int size, int value,
     int offset, int reg)
 {
   if (size == 2) {
-    g_print("  addw $%d, %d(%%%s)\n", value, offset,
+    printf("  addw $%d, %d(%%%s)\n", value, offset,
         x86_get_regname(reg));
     *program->codeptr++ = 0x66;
   } else {
-    g_print("  addl $%d, %d(%%%s)\n", value, offset,
+    printf("  addl $%d, %d(%%%s)\n", value, offset,
         x86_get_regname(reg));
   }
 
@@ -970,10 +969,10 @@ void
 x86_emit_add_imm_reg (OrcProgram *program, int size, int value, int reg)
 {
   if (size == 2) {
-    g_print("  addw $%d, %%%s\n", value, x86_get_regname_16(reg));
+    printf("  addw $%d, %%%s\n", value, x86_get_regname_16(reg));
     *program->codeptr++ = 0x66;
   } else {
-    g_print("  addl $%d, %%%s\n", value, x86_get_regname(reg));
+    printf("  addl $%d, %%%s\n", value, x86_get_regname(reg));
   }
 
   if (value >= -128 && value < 128) {
@@ -997,10 +996,10 @@ x86_emit_dec_memoffset (OrcProgram *program, int size,
     int offset, int reg)
 {
   if (size == 2) {
-    g_print("  decw %d(%%%s)\n", offset, x86_get_regname(reg));
+    printf("  decw %d(%%%s)\n", offset, x86_get_regname(reg));
     *program->codeptr++ = 0x66;
   } else {
-    g_print("  decl %d(%%%s)\n", offset, x86_get_regname(reg));
+    printf("  decl %d(%%%s)\n", offset, x86_get_regname(reg));
   }
 
   *program->codeptr++ = 0xff;
@@ -1009,13 +1008,13 @@ x86_emit_dec_memoffset (OrcProgram *program, int size,
 
 void x86_emit_ret (OrcProgram *program)
 {
-  g_print("  ret\n");
+  printf("  ret\n");
   *program->codeptr++ = 0xc3;
 }
 
 void x86_emit_emms (OrcProgram *program)
 {
-  g_print("  emms\n");
+  printf("  emms\n");
   *program->codeptr++ = 0x0f;
   *program->codeptr++ = 0x77;
 }
@@ -1037,7 +1036,7 @@ x86_add_label (OrcProgram *program, unsigned char *ptr, int label)
 
 void x86_emit_je (OrcProgram *program, int label)
 {
-  g_print("  je .L%d\n", label);
+  printf("  je .L%d\n", label);
 
   *program->codeptr++ = 0x74;
   x86_add_fixup (program, program->codeptr, label);
@@ -1046,7 +1045,7 @@ void x86_emit_je (OrcProgram *program, int label)
 
 void x86_emit_jne (OrcProgram *program, int label)
 {
-  g_print("  jne .L%d\n", label);
+  printf("  jne .L%d\n", label);
   *program->codeptr++ = 0x75;
   x86_add_fixup (program, program->codeptr, label);
   *program->codeptr++ = -1;
@@ -1054,7 +1053,7 @@ void x86_emit_jne (OrcProgram *program, int label)
 
 void x86_emit_label (OrcProgram *program, int label)
 {
-  g_print(".L%d:\n", label);
+  printf(".L%d:\n", label);
 
   x86_add_label (program, program->codeptr, label);
 }
diff --git a/orc/orcprogram.c b/orc/orcprogram.c
index da31111..e0d64d0 100644
--- a/orc/orcprogram.c
+++ b/orc/orcprogram.c
@@ -1,7 +1,6 @@
 
 #include "config.h"
 
-#include <glib.h>
 #include <stdio.h>
 #include <string.h>
 #include <stdlib.h>
@@ -59,8 +58,8 @@ orc_program_dup_temporary (OrcProgram *program, int var, int j)
 
   program->vars[i].vartype = ORC_VAR_TYPE_TEMP;
   program->vars[i].type = program->vars[var].type;
-  program->vars[i].name = g_strdup_printf("%s.dup%d",
-      program->vars[var].name, j);
+  program->vars[i].name = malloc (strlen(program->vars[var].name) + 10);
+  sprintf(program->vars[i].name, "%s.dup%d", program->vars[var].name, j);
   program->n_vars++;
 
   return i;
@@ -203,7 +202,7 @@ orc_program_rewrite_vars (OrcProgram *program)
     for(k=opcode->n_dest;k<opcode->n_src + opcode->n_dest;k++){
       var = insn->args[k];
       if (program->vars[var].vartype == ORC_VAR_TYPE_DEST) {
-        g_print("ERROR: using dest var as source\n");
+        printf("ERROR: using dest var as source\n");
       }
 
       actual_var = var;
@@ -214,7 +213,7 @@ orc_program_rewrite_vars (OrcProgram *program)
 
       if (!program->vars[var].used) {
         if (program->vars[var].vartype == ORC_VAR_TYPE_TEMP) {
-          g_print("ERROR: using uninitialized temp var\n");
+          printf("ERROR: using uninitialized temp var\n");
         }
         program->vars[var].used = TRUE;
         program->vars[var].first_use = j;
@@ -226,13 +225,13 @@ orc_program_rewrite_vars (OrcProgram *program)
       var = insn->args[k];
 
       if (program->vars[var].vartype == ORC_VAR_TYPE_SRC) {
-        g_print("ERROR: using src var as dest\n");
+        printf("ERROR: using src var as dest\n");
       }
       if (program->vars[var].vartype == ORC_VAR_TYPE_CONST) {
-        g_print("ERROR: using const var as dest\n");
+        printf("ERROR: using const var as dest\n");
       }
       if (program->vars[var].vartype == ORC_VAR_TYPE_PARAM) {
-        g_print("ERROR: using param var as dest\n");
+        printf("ERROR: using param var as dest\n");
       }
 
       actual_var = var;
@@ -246,7 +245,7 @@ orc_program_rewrite_vars (OrcProgram *program)
         program->vars[actual_var].first_use = j;
       } else {
         if (program->vars[var].vartype == ORC_VAR_TYPE_DEST) {
-          g_print("ERROR: writing dest more than once\n");
+          printf("ERROR: writing dest more than once\n");
         }
         if (program->vars[var].vartype == ORC_VAR_TYPE_TEMP) {
           actual_var = orc_program_dup_temporary (program, var, j);
@@ -366,7 +365,7 @@ orc_program_rewrite_vars2 (OrcProgram *program)
 
 #if 0
   for(i=0;i<program->n_vars;i++){
-    g_print("# %2d: %2d %2d %d\n",
+    printf("# %2d: %2d %2d %d\n",
         i,
         program->vars[i].first_use,
         program->vars[i].last_use,
@@ -399,27 +398,27 @@ orc_program_dump (OrcProgram *program)
     insn = program->insns + i;
     opcode = insn->opcode;
 
-    g_print("insn: %d\n", i);
-    g_print("  opcode: %s\n", opcode->name);
+    printf("insn: %d\n", i);
+    printf("  opcode: %s\n", opcode->name);
 
     for(j=0;j<opcode->n_dest;j++){
-      g_print("  dest%d: %d %s\n", j, insn->args[j],
+      printf("  dest%d: %d %s\n", j, insn->args[j],
           program->vars[insn->args[j]].name);
     }
     for(j=0;j<opcode->n_src;j++){
-      g_print("  src%d: %d %s\n", j, insn->args[opcode->n_dest + j],
+      printf("  src%d: %d %s\n", j, insn->args[opcode->n_dest + j],
           program->vars[insn->args[opcode->n_dest + j]].name);
     }
 
-    g_print("\n");
+    printf("\n");
   }
 
   for(i=0;i<program->n_vars;i++){
-    g_print("var: %d %s\n", i, program->vars[i].name);
-    g_print("first_use: %d\n", program->vars[i].first_use);
-    g_print("last_use: %d\n", program->vars[i].last_use);
+    printf("var: %d %s\n", i, program->vars[i].name);
+    printf("first_use: %d\n", program->vars[i].first_use);
+    printf("last_use: %d\n", program->vars[i].last_use);
 
-    g_print("\n");
+    printf("\n");
   }
 
 }
diff --git a/orc/orcprogram.h b/orc/orcprogram.h
index b2d2d83..de04067 100644
--- a/orc/orcprogram.h
+++ b/orc/orcprogram.h
@@ -28,6 +28,16 @@ typedef void (*OrcRuleEmitFunc)(OrcProgram *p, void *user, OrcInstruction *insn)
 #define ORC_OPCODE_N_ARGS 4
 #define ORC_OPCODE_N_RULES 8
 
+#define ORC_STRUCT_OFFSET(struct_type, member)    \
+      ((long) ((unsigned int *) &((struct_type*) 0)->member))
+
+#ifndef TRUE
+#define TRUE 1
+#endif
+#ifndef FALSE
+#define FALSE 0
+#endif
+
 enum {
   ORC_RULE_C = 0,
   ORC_RULE_SCALAR_1,
diff --git a/orc/orcrule.c b/orc/orcrule.c
index 7024745..1919e76 100644
--- a/orc/orcrule.c
+++ b/orc/orcrule.c
@@ -1,7 +1,6 @@
 
 #include "config.h"
 
-#include <glib.h>
 #include <stdio.h>
 #include <string.h>
 #include <stdlib.h>
diff --git a/orc/orctype.c b/orc/orctype.c
index ea770c9..fbbe5ca 100644
--- a/orc/orctype.c
+++ b/orc/orctype.c
@@ -1,7 +1,6 @@
 
 #include "config.h"
 
-#include <glib.h>
 #include <stdio.h>
 #include <string.h>
 #include <stdlib.h>


More information about the Liboil-commit mailing list