From 48009418220e2866b60189e732a74af6a4ad1558 Mon Sep 17 00:00:00 2001
From: Andrea Shepard <andrea@special-circumstanc.es>
Date: Sat, 16 Nov 2019 01:01:41 +0000
Subject: [PATCH] Use LLVM name/label macros in bits.c

---
 src/parsers/bits.c | 25 ++++++-------------------
 1 file changed, 6 insertions(+), 19 deletions(-)

diff --git a/src/parsers/bits.c b/src/parsers/bits.c
index ae01a7f1..336585a7 100644
--- a/src/parsers/bits.c
+++ b/src/parsers/bits.c
@@ -34,10 +34,8 @@ static bool bits_llvm(HLLVMParserCompileContext *ctxt,
   /* Allocator */
   HAllocator *mm__ = NULL;
   /* Names */
-  char *bits_bb_name = NULL;
-  int bits_bb_name_len = 0;
-  char *read_bits_name = NULL;
-  int read_bits_name_len;
+  H_LLVM_DECLARE_NAME(bits_bb);
+  H_LLVM_DECLARE_NAME(read_bits);
   /* Basic blocks */
   LLVMBasicBlockRef bits_bb;
   /* Arguments for call to h_read_bits() */
@@ -68,9 +66,7 @@ static bool bits_llvm(HLLVMParserCompileContext *ctxt,
   bits_args[2] = LLVMConstInt(LLVMInt8Type(), env->signedp ? 1 : 0, 0);
 
   /* Set up basic blocks: entry, success and failure branches, then exit */
-  bits_bb_name_len = snprintf(NULL, 0, "bits_%p", p);
-  bits_bb_name = h_new(char, bits_bb_name_len + 1);
-  snprintf(bits_bb_name, bits_bb_name_len + 1, "bits_%p", p);
+  H_LLVM_COMPUTE_NAME(bits_bb, p);
   bits_bb = LLVMAppendBasicBlock(ctxt->func, bits_bb_name);
   LLVMBuildBr(ctxt->builder, bits_bb);
   LLVMPositionBuilderAtEnd(ctxt->builder, bits_bb);
@@ -82,9 +78,7 @@ static bool bits_llvm(HLLVMParserCompileContext *ctxt,
    *                                    i32 env_->length,
    *                                    i8 signext env_->signedp)
    */
-  read_bits_name_len = snprintf(NULL, 0, "bits_read_bits_%p", p);
-  read_bits_name = h_new(char, read_bits_name_len + 1);
-  snprintf(read_bits_name, read_bits_name_len + 1, "bits_read_bits_%p", p);
+  H_LLVM_COMPUTE_NAME(read_bits, p);
   bits = LLVMBuildCall(ctxt->builder,
                        LLVMGetNamedFunction(ctxt->mod, "h_read_bits"),
                        bits_args, 3, read_bits_name);
@@ -95,15 +89,8 @@ static bool bits_llvm(HLLVMParserCompileContext *ctxt,
   /* Return mr */
   *res = mr;
 
-  if (bits_bb_name) {
-    h_free(bits_bb_name);
-    bits_bb_name = NULL;
-  }
-
-  if (read_bits_name) {
-    h_free(read_bits_name);
-    read_bits_name = NULL;
-  }
+  H_LLVM_FREE_NAME(bits_bb);
+  H_LLVM_FREE_NAME(read_bits);
 
   return true;
 }
-- 
GitLab