[llvm-bugs] [Bug 41738] New: uint16_t llvm::LLT::getNumElements() const: Assertion `IsVector && "cannot get number of elements on scalar/aggregate"' failed.

via llvm-bugs llvm-bugs at lists.llvm.org
Fri May 3 16:28:49 PDT 2019


https://bugs.llvm.org/show_bug.cgi?id=41738

            Bug ID: 41738
           Summary: uint16_t llvm::LLT::getNumElements() const: Assertion
                    `IsVector && "cannot get number of elements on
                    scalar/aggregate"' failed.
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: release blocker
          Priority: P
         Component: Backend: AArch64
          Assignee: unassignedbugs at nondot.org
          Reporter: phosek at chromium.org
                CC: arnaud.degrandmaison at arm.com,
                    llvm-bugs at lists.llvm.org, peter.smith at linaro.org,
                    Ties.Stuij at arm.com

We're seeing the following assertion failure when compiling Skia for AArch64
with tip-of-tree Clang.

clang++:
/usr/local/google/home/phosek/clang-llvm/llvm-project/llvm/include/llvm/Support/LowLevelTypeImpl.h:100:
uint16_t llvm::LLT::getNumElements() const: Assertion `IsVector && "cannot get
number of elements on scalar/aggregate"' failed.
Stack dump:
0.      Program arguments: ./bin/clang++ -cc1 -triple aarch64-fuchsia -emit-obj
-mrelax-all --mrelax-relocations -disable-free -main-file-name
GrQuadPerEdgeAA.cpp -mrelocation-model pic -pic-level 2 -pic-is-pie
-mthread-model posix -mdisable-fp-elim -masm-verbose -mconstructor-aliases
-munwind-tables -fuse-init-array -target-cpu generic -target-feature +neon
-target-abi aapcs -fallow-half-arguments-and-returns -dwarf-column-info
-debug-info-kind=limited -dwarf-version=4 -debugger-tuning=gdb
-coverage-notes-file
/usr/local/google/home/phosek/fuchsia/out/arm64/obj/third_party/skia/src/gpu/ops/gpu.GrQuadPerEdgeAA.gcno
-sys-header-deps -D
TOOLCHAIN_VERSION=IyCkqv3EUBG8MlKYYXuZaOB14iSunTVDq97Y1zF6MtUC -D
_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS -D
_LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS -D ZX_DEBUGLEVEL=2 -D SK_R32_SHIFT=16
-D SK_DISABLE_REDUCE_OPLIST_SPLITTING -D SK_LEGACY_SKCODEC_NONE_ENUM -D
SK_ENABLE_DUMP_GPU -D SK_DISABLE_AAA -D SK_DISABLE_READBUFFER -D
SK_DISABLE_EFFECT_DESERIALIZATION -D SK_DISABLE_LEGACY_SHADERCONTEXT -D
SK_DISABLE_LOWP_RASTER_PIPELINE -D SK_FORCE_RASTER_PIPELINE_BLITTER -D
SK_GAMMA_APPLY_TO_A8 -D SKIA_IMPLEMENTATION=1 -D SK_VULKAN -D
SK_ENABLE_DUMP_GPU -D VK_USE_PLATFORM_FUCHSIA=1 -D VULKAN_HPP_NO_SMART_HANDLE
-O0 -Wall -Wextra -Wnewline-eof -Wno-unused-parameter
-Wno-unused-lambda-capture -Wno-user-defined-warnings -Werror
-Wno-error=deprecated-declarations -Wthread-safety -std=c++17
-fdeprecated-macro
-fdebug-prefix-map=/usr/local/google/home/phosek/fuchsia=../.. -ferror-limit 19
-fmessage-length 212 -fvisibility hidden -fvisibility-inlines-hidden
-fsanitize=safe-stack -stack-protector 2 -ftrivial-auto-var-init=pattern
-fno-rtti -fno-signed-char -fobjc-runtime=gcc -fno-common
-fdiagnostics-show-option -fcolor-diagnostics -x c++ GrQuadPerEdgeAA-4fb5fe.cpp
-faddrsig
1.      <eof> parser at end of file
2.      Code generation
3.      Running pass 'Function Pass Manager' on module
'GrQuadPerEdgeAA-4fb5fe.cpp'.
4.      Running pass 'IRTranslator' on function
'@_ZN4skvxL7to_vextILi1EfEEDvT__T0_RKNS_3VecIXT_ES1_EE'
 #0 0x0000000006ee4739 llvm::sys::PrintStackTrace(llvm::raw_ostream&)
/usr/local/google/home/phosek/clang-llvm/llvm-project/llvm/lib/Support/Unix/Signals.inc:494:11
 #1 0x0000000006ee4829 PrintStackTraceSignalHandler(void*)
/usr/local/google/home/phosek/clang-llvm/llvm-project/llvm/lib/Support/Unix/Signals.inc:558:1
 #2 0x0000000006ee32db llvm::sys::RunSignalHandlers()
/usr/local/google/home/phosek/clang-llvm/llvm-project/llvm/lib/Support/Signals.cpp:67:5
 #3 0x0000000006ee4e4e SignalHandler(int)
/usr/local/google/home/phosek/clang-llvm/llvm-project/llvm/lib/Support/Unix/Signals.inc:357:1
 #4 0x00007f050a83c0c0 __restore_rt
(/lib/x86_64-linux-gnu/libpthread.so.0+0x110c0)
 #5 0x00007f0509b67fcf raise (/lib/x86_64-linux-gnu/libc.so.6+0x32fcf)
 #6 0x00007f0509b693fa abort (/lib/x86_64-linux-gnu/libc.so.6+0x343fa)
 #7 0x00007f0509b60e37 (/lib/x86_64-linux-gnu/libc.so.6+0x2be37)
 #8 0x00007f0509b60ee2 (/lib/x86_64-linux-gnu/libc.so.6+0x2bee2)
 #9 0x00000000045b1150 llvm::LLT::getNumElements() const
/usr/local/google/home/phosek/clang-llvm/llvm-project/llvm/include/llvm/Support/LowLevelTypeImpl.h:0:5
#10 0x00000000045abb21
llvm::AArch64CallLowering::lowerReturn(llvm::MachineIRBuilder&, llvm::Value
const*, llvm::ArrayRef<unsigned int>) const
/usr/local/google/home/phosek/clang-llvm/llvm-project/llvm/lib/Target/AArch64/AArch64CallLowering.cpp:291:41
#11 0x0000000007ee210d llvm::IRTranslator::translateRet(llvm::User const&,
llvm::MachineIRBuilder&)
/usr/local/google/home/phosek/clang-llvm/llvm-project/llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp:361:3
#12 0x0000000007eea26e llvm::IRTranslator::translate(llvm::Instruction const&)
/usr/local/google/home/phosek/clang-llvm/llvm-project/llvm/include/llvm/IR/Instruction.def:127:1
#13 0x0000000007eec19d
llvm::IRTranslator::runOnMachineFunction(llvm::MachineFunction&)
/usr/local/google/home/phosek/clang-llvm/llvm-project/llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp:1849:13
#14 0x00000000060b10ff
llvm::MachineFunctionPass::runOnFunction(llvm::Function&)
/usr/local/google/home/phosek/clang-llvm/llvm-project/llvm/lib/CodeGen/MachineFunctionPass.cpp:73:8
#15 0x00000000065713cc llvm::FPPassManager::runOnFunction(llvm::Function&)
/usr/local/google/home/phosek/clang-llvm/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1648:23
#16 0x000000000657182f llvm::FPPassManager::runOnModule(llvm::Module&)
/usr/local/google/home/phosek/clang-llvm/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1685:16
#17 0x0000000006571fb8 (anonymous
namespace)::MPPassManager::runOnModule(llvm::Module&)
/usr/local/google/home/phosek/clang-llvm/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1752:23
#18 0x0000000006571ae8 llvm::legacy::PassManagerImpl::run(llvm::Module&)
/usr/local/google/home/phosek/clang-llvm/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1865:16
#19 0x0000000006572551 llvm::legacy::PassManager::run(llvm::Module&)
/usr/local/google/home/phosek/clang-llvm/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1896:3
#20 0x00000000072199cd (anonymous
namespace)::EmitAssemblyHelper::EmitAssembly(clang::BackendAction,
std::__2::unique_ptr<llvm::raw_pwrite_stream,
std::__2::default_delete<llvm::raw_pwrite_stream> >)
/usr/local/google/home/phosek/clang-llvm/llvm-project/clang/lib/CodeGen/BackendUtil.cpp:894:3
#21 0x0000000007216200 clang::EmitBackendOutput(clang::DiagnosticsEngine&,
clang::HeaderSearchOptions const&, clang::CodeGenOptions const&,
clang::TargetOptions const&, clang::LangOptions const&, llvm::DataLayout
const&, llvm::Module*, clang::BackendAction,
std::__2::unique_ptr<llvm::raw_pwrite_stream,
std::__2::default_delete<llvm::raw_pwrite_stream> >)
/usr/local/google/home/phosek/clang-llvm/llvm-project/clang/lib/CodeGen/BackendUtil.cpp:1452:5
#22 0x0000000007c74fdb
clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&)
/usr/local/google/home/phosek/clang-llvm/llvm-project/clang/lib/CodeGen/CodeGenAction.cpp:300:7
#23 0x0000000009aae678 clang::ParseAST(clang::Sema&, bool, bool)
/usr/local/google/home/phosek/clang-llvm/llvm-project/clang/lib/Parse/ParseAST.cpp:178:12
#24 0x0000000007ae7ee2 clang::ASTFrontendAction::ExecuteAction()
/usr/local/google/home/phosek/clang-llvm/llvm-project/clang/lib/Frontend/FrontendAction.cpp:1037:1
#25 0x0000000007c7260c clang::CodeGenAction::ExecuteAction()
/usr/local/google/home/phosek/clang-llvm/llvm-project/clang/lib/CodeGen/CodeGenAction.cpp:1057:1
#26 0x0000000007ae7913 clang::FrontendAction::Execute()
/usr/local/google/home/phosek/clang-llvm/llvm-project/clang/lib/Frontend/FrontendAction.cpp:938:7
#27 0x0000000007a1e7b4
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&)
/usr/local/google/home/phosek/clang-llvm/llvm-project/clang/lib/Frontend/CompilerInstance.cpp:945:7
#28 0x0000000007c62fc0
clang::ExecuteCompilerInvocation(clang::CompilerInstance*)
/usr/local/google/home/phosek/clang-llvm/llvm-project/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp:273:8
#29 0x000000000444f3c3 cc1_main(llvm::ArrayRef<char const*>, char const*,
void*)
/usr/local/google/home/phosek/clang-llvm/llvm-project/clang/tools/driver/cc1_main.cpp:225:13
#30 0x000000000444248f ExecuteCC1Tool(llvm::ArrayRef<char const*>,
llvm::StringRef)
/usr/local/google/home/phosek/clang-llvm/llvm-project/clang/tools/driver/driver.cpp:309:5
#31 0x000000000444182c main
/usr/local/google/home/phosek/clang-llvm/llvm-project/clang/tools/driver/driver.cpp:381:5
#32 0x00007f0509b552b1 __libc_start_main
(/lib/x86_64-linux-gnu/libc.so.6+0x202b1)
#33 0x000000000444102a _start (./bin/clang+++0x444102a)
zsh: abort      ./bin/clang++ "-cc1" "-triple" "aarch64-fuchsia" "-emit-obj"
"-mrelax-all"

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20190503/e34c2941/attachment.html>


More information about the llvm-bugs mailing list