forked from OSchip/llvm-project
ScopInfo: Make printing of ScopArrayInfo more similar to declarations in C
Memory references are now printed as follows: Old New Scalars: i64 MemRef_val[*] i64 MemRef_val; Arrays: i64 MemRef_A[*][%m][%o][8] i64 MemRef_A[*][%m][%o]; We do not print any more information about the element size in the type. Such information has already been available in a comment after the scalar/array declaration. It was redundant and did not match well with what people were used from C. llvm-svn: 252602
This commit is contained in:
parent
4960df0db3
commit
4ea2e07a60
|
@ -214,8 +214,10 @@ isl_id *ScopArrayInfo::getBasePtrId() const { return isl_id_copy(Id); }
|
|||
void ScopArrayInfo::dump() const { print(errs()); }
|
||||
|
||||
void ScopArrayInfo::print(raw_ostream &OS, bool SizeAsPwAff) const {
|
||||
OS.indent(8) << *getElementType() << " " << getName() << "[*]";
|
||||
for (unsigned u = 0; u < getNumberOfDimensions(); u++) {
|
||||
OS.indent(8) << *getElementType() << " " << getName();
|
||||
if (getNumberOfDimensions() > 0)
|
||||
OS << "[*]";
|
||||
for (unsigned u = 0; u + 1 < getNumberOfDimensions(); u++) {
|
||||
OS << "[";
|
||||
|
||||
if (SizeAsPwAff)
|
||||
|
@ -226,6 +228,8 @@ void ScopArrayInfo::print(raw_ostream &OS, bool SizeAsPwAff) const {
|
|||
OS << "]";
|
||||
}
|
||||
|
||||
OS << ";";
|
||||
|
||||
if (BasePtrOriginSAI)
|
||||
OS << " [BasePtrOrigin: " << BasePtrOriginSAI->getName() << "]";
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
|
||||
|
||||
; CHECK: Arrays {
|
||||
; CHECK: double MemRef_A[*][%m][%o][8] // Element size 8
|
||||
; CHECK: double MemRef_A[*][%m][%o]; // Element size 8
|
||||
; CHECK: }
|
||||
|
||||
; CHECK: [m, o, n] -> { Stmt_for_body6[i0, i1, i2] -> MemRef_A[3 + i0, i1, 7 + i2] };
|
||||
|
|
|
@ -13,15 +13,15 @@
|
|||
; CHECK: }
|
||||
;
|
||||
; CHECK: Arrays {
|
||||
; CHECK: i32** MemRef_A[*][8]
|
||||
; CHECK: i32* MemRef_tmp3[*][8] [BasePtrOrigin: MemRef_A]
|
||||
; CHECK: i32 MemRef_tmp5[*][4] [BasePtrOrigin: MemRef_tmp3]
|
||||
; CHECK: i32** MemRef_A[*];
|
||||
; CHECK: i32* MemRef_tmp3[*]; [BasePtrOrigin: MemRef_A]
|
||||
; CHECK: i32 MemRef_tmp5[*]; [BasePtrOrigin: MemRef_tmp3]
|
||||
; CHECK: }
|
||||
;
|
||||
; CHECK: Arrays (Bounds as pw_affs) {
|
||||
; CHECK: i32** MemRef_A[*][ { [] -> [(8)] } ]
|
||||
; CHECK: i32* MemRef_tmp3[*][ { [] -> [(8)] } ] [BasePtrOrigin: MemRef_A]
|
||||
; CHECK: i32 MemRef_tmp5[*][ { [] -> [(4)] } ] [BasePtrOrigin: MemRef_tmp3]
|
||||
; CHECK: i32** MemRef_A[*];
|
||||
; CHECK: i32* MemRef_tmp3[*]; [BasePtrOrigin: MemRef_A]
|
||||
; CHECK: i32 MemRef_tmp5[*]; [BasePtrOrigin: MemRef_tmp3]
|
||||
; CHECK: }
|
||||
;
|
||||
; void f(int ***A) {
|
||||
|
|
|
@ -25,10 +25,10 @@
|
|||
; CHECK-NOT: p5
|
||||
|
||||
; CHECK: Arrays {
|
||||
; CHECK: double MemRef_A[*][(zext i32 %m to i64)][(zext i32 %o to i64)][8] // Element size 8
|
||||
; CHECK: double MemRef_A[*][(zext i32 %m to i64)][(zext i32 %o to i64)]; // Element size 8
|
||||
; CHECK: }
|
||||
; CHECK: Arrays (Bounds as pw_affs) {
|
||||
; CHECK: double MemRef_A[*][ [p_3] -> { [] -> [(p_3)] } ][ [p_4] -> { [] -> [(p_4)] } ][ { [] -> [(8)] } ] // Element size 8
|
||||
; CHECK: double MemRef_A[*][ [p_3] -> { [] -> [(p_3)] } ][ [p_4] -> { [] -> [(p_4)] } ]; // Element size 8
|
||||
; CHECK: }
|
||||
|
||||
|
||||
|
|
|
@ -15,15 +15,15 @@
|
|||
; CHECK: Region: %bb1---%bb11
|
||||
;
|
||||
; CHECK: Arrays {
|
||||
; CHECK: i32 MemRef_A[*][4]
|
||||
; CHECK: i32 MemRef_x[*] [BasePtrOrigin: MemRef_A]
|
||||
; CHECK: i32 MemRef_y__phi[*]
|
||||
; CHECK: i32 MemRef_A[*];
|
||||
; CHECK: i32 MemRef_x; [BasePtrOrigin: MemRef_A]
|
||||
; CHECK: i32 MemRef_y__phi;
|
||||
; CHECK: }
|
||||
;
|
||||
; CHECK: Arrays (Bounds as pw_affs) {
|
||||
; CHECK: i32 MemRef_A[*][ { [] -> [(4)] } ]
|
||||
; CHECK: i32 MemRef_x[*] [BasePtrOrigin: MemRef_A]
|
||||
; CHECK: i32 MemRef_y__phi[*]
|
||||
; CHECK: i32 MemRef_A[*];
|
||||
; CHECK: i32 MemRef_x; [BasePtrOrigin: MemRef_A]
|
||||
; CHECK: i32 MemRef_y__phi;
|
||||
; CHECK: }
|
||||
;
|
||||
; CHECK: Stmt_bb2__TO__bb7
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
|
||||
; CHECK-NOT: Memref_scalar
|
||||
|
||||
; SCALARS: float MemRef_scalar[*] // Element size 4
|
||||
; SCALARS: float MemRef_scalar; // Element size 4
|
||||
|
||||
; SCALARS: ReadAccess := [Reduction Type: NONE] [Scalar: 1]
|
||||
; SCALARS: { Stmt_stmt1[i0] -> MemRef_scalar[] };
|
||||
|
|
|
@ -4,9 +4,9 @@
|
|||
; as it is used as a memory base pointer (%0) but also as a scalar (%out.addr.0.lcssa).
|
||||
;
|
||||
; CHECK: Arrays {
|
||||
; CHECK-NEXT: float* MemRef_out[*] // Element size 0
|
||||
; CHECK-NEXT: float* MemRef_out_addr_0_lcssa[*] // Element size 0
|
||||
; CHECK-NEXT: float MemRef_out[*][4] // Element size 4
|
||||
; CHECK-NEXT: float* MemRef_out; // Element size 0
|
||||
; CHECK-NEXT: float* MemRef_out_addr_0_lcssa; // Element size 0
|
||||
; CHECK-NEXT: float MemRef_out[*]; // Element size 4
|
||||
; CHECK-NEXT: }
|
||||
;
|
||||
target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128"
|
||||
|
|
|
@ -30,13 +30,13 @@ return:
|
|||
}
|
||||
|
||||
; CHECK: Arrays {
|
||||
; CHECK: i64 MemRef_a[*][8]
|
||||
; CHECK: i64 MemRef_val[*] [BasePtrOrigin: MemRef_a]
|
||||
; CHECK: i64 MemRef_a[*];
|
||||
; CHECK: i64 MemRef_val; [BasePtrOrigin: MemRef_a]
|
||||
; CHECK: }
|
||||
;
|
||||
; CHECK: Arrays (Bounds as pw_affs) {
|
||||
; CHECK: i64 MemRef_a[*][ { [] -> [(8)] } ]
|
||||
; CHECK: i64 MemRef_val[*] [BasePtrOrigin: MemRef_a]
|
||||
; CHECK: i64 MemRef_a[*];
|
||||
; CHECK: i64 MemRef_val; [BasePtrOrigin: MemRef_a]
|
||||
; CHECK: }
|
||||
|
||||
; CHECK: Stmt_S1
|
||||
|
|
|
@ -27,7 +27,7 @@ return: ; preds = %bb, %entry
|
|||
; CHECK: Assumed Context:
|
||||
; CHECK: { : }
|
||||
; CHECK: Arrays {
|
||||
; CHECK: i64 MemRef_a[*][8] // Element size 8
|
||||
; CHECK: i64 MemRef_a[*]; // Element size 8
|
||||
; CHECK: }
|
||||
|
||||
; CHECK: Stmt_bb
|
||||
|
|
Loading…
Reference in New Issue