================ @@ -644,7 +644,7 @@ class ConstantDataSequential : public ConstantData { Type *getElementType() const; /// Return the number of elements in the array or vector. - unsigned getNumElements() const; + uint64_t getNumElements() const; ---------------- pzzp wrote:
ok, I update `getElementAsInteger` and `getElementAsFloat`, it seems that these two are used in codegen. I test it with this script's generation ```bash #!/bin/bash cat << EOF target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" EOF # generate @ARR = global [1073741825 x i32] [...], align 16 for (( i = 0; i<1024; i++)); do ARR_1K+="i32 $((RANDOM % 97)), " done for (( i = 0; i<1024; i++)); do ARR_1M+="$ARR_1K" done echo -n "@ARR = global [$((1024 * 1024 * 1024 + 1)) x i32] [" for (( i = 0; i<$((1024)); i++)); do echo -n "$ARR_1M" done echo -n 'i32 233], align 16' cat << EOF !llvm.module.flags = !{!0, !1, !2, !3} !0 = !{i32 1, !"wchar_size", i32 4} !1 = !{i32 8, !"PIC Level", i32 2} !2 = !{i32 7, !"PIE Level", i32 2} !3 = !{i32 7, !"uwtable", i32 2} EOF ``` I checked that the result is ok. The last number in result asm is `233` and the size is `4294967300` https://github.com/llvm/llvm-project/pull/126481 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits