Xiang Li 944f4b2805 [DirectX backend] add support ConstantBuffer to DXILResource.h
class ConstantBuffer is added to save information for cbuffer.
Also add CBufferDataLayout to calculate the size for cbuffer.

Now always use legacy cbuffer layout.
https://reviews.llvm.org/D134998 will add control to disable legacy cbuffer layout.

Reviewed By: beanz

Differential Revision: https://reviews.llvm.org/D136031
2023-01-12 13:42:11 -05:00

25 lines
686 B
LLVM

; RUN: llc --filetype=obj %s -o - | dxil-dis -o - | FileCheck %s
; RUN: llc --filetype=obj %s --stop-after=dxil-write-bitcode -o %t && llvm-bcanalyzer --dump-blockinfo %t | FileCheck %s --check-prefix=BLOCK_INFO
; CHECK: define i32 @foo(i32 %X, i32 %Y) {
; CHECK: %Z = sub i32 %X, %Y
; CHECK: %Q = add i32 %Z, %Y
; CHECK: ret i32 %Q
; CHECK: }
; BLOCK_INFO:Stream type: LLVM IR
; Make sure uselist strtab and symtab is not in dxil.
; BLOCK_INFO-NOT:USELIST_BLOCK_ID
; BLOCK_INFO-NOT:STRTAB_BLOCK
; BLOCK_INFO-NOT:SYMTAB_BLOCK
target triple = "dxil-unknown-shadermodel6.7-library"
define i32 @foo(i32 %X, i32 %Y) {
%Z = sub i32 %X, %Y
%Q = add i32 %Z, %Y
ret i32 %Q
}