radeonsi: use a clever alignment for constant buffer uploads
[mesa.git] / src / amd / common / ac_llvm_build.h
index 37a5bea3f06b622f46a86f067cf2b107e0e22be2..3258e5ef54a227e049c51c27d9755b9aaf78594e 100644 (file)
@@ -170,6 +170,26 @@ ac_emit_ddxy(struct ac_llvm_context *ctx,
             LLVMValueRef lds,
             LLVMValueRef val);
 
+#define AC_SENDMSG_GS 2
+#define AC_SENDMSG_GS_DONE 3
+
+#define AC_SENDMSG_GS_OP_NOP      (0 << 4)
+#define AC_SENDMSG_GS_OP_CUT      (1 << 4)
+#define AC_SENDMSG_GS_OP_EMIT     (2 << 4)
+#define AC_SENDMSG_GS_OP_EMIT_CUT (3 << 4)
+
+void ac_emit_sendmsg(struct ac_llvm_context *ctx,
+                    uint32_t msg,
+                    LLVMValueRef wave_id);
+
+LLVMValueRef ac_emit_imsb(struct ac_llvm_context *ctx,
+                         LLVMValueRef arg,
+                         LLVMTypeRef dst_type);
+
+LLVMValueRef ac_emit_umsb(struct ac_llvm_context *ctx,
+                         LLVMValueRef arg,
+                         LLVMTypeRef dst_type);
+
 #ifdef __cplusplus
 }
 #endif