ac: remove bitcast_to_float()
authorConnor Abbott <cwabbott0@gmail.com>
Wed, 19 Jul 2017 00:35:35 +0000 (17:35 -0700)
committerDave Airlie <airlied@redhat.com>
Fri, 8 Sep 2017 03:24:56 +0000 (04:24 +0100)
ac_to_float() does a superset of what it does.

Signed-off-by: Dave Airlie <airlied@redhat.com>
src/amd/common/ac_llvm_build.c

index cc82e78fba15dc56c363fb993a60c1d486161285..a831baed3f5c250e54b625e2fa08e898d1eb95a9 100644 (file)
@@ -212,20 +212,6 @@ ac_build_intrinsic(struct ac_llvm_context *ctx, const char *name,
        return call;
 }
 
-static LLVMValueRef bitcast_to_float(struct ac_llvm_context *ctx,
-                                    LLVMValueRef value)
-{
-       LLVMTypeRef type = LLVMTypeOf(value);
-       LLVMTypeRef new_type;
-
-       if (LLVMGetTypeKind(type) == LLVMVectorTypeKind)
-               new_type = LLVMVectorType(ctx->f32, LLVMGetVectorSize(type));
-       else
-               new_type = ctx->f32;
-
-       return LLVMBuildBitCast(ctx->builder, value, new_type, "");
-}
-
 /**
  * Given the i32 or vNi32 \p type, generate the textual name (e.g. for use with
  * intrinsic names).
@@ -761,7 +747,7 @@ ac_build_buffer_store_dword(struct ac_llvm_context *ctx,
                        offset = LLVMBuildAdd(ctx->builder, offset, voffset, "");
 
                LLVMValueRef args[] = {
-                       bitcast_to_float(ctx, vdata),
+                       ac_to_float(ctx, vdata),
                        LLVMBuildBitCast(ctx->builder, rsrc, ctx->v4i32, ""),
                        LLVMConstInt(ctx->i32, 0, 0),
                        offset,
@@ -1218,7 +1204,7 @@ LLVMValueRef ac_build_image_opcode(struct ac_llvm_context *ctx,
                              a->opcode == ac_image_get_lod;
 
                if (sample)
-                       args[num_args++] = bitcast_to_float(ctx, a->addr);
+                       args[num_args++] = ac_to_float(ctx, a->addr);
                else
                        args[num_args++] = a->addr;