AOSP buildbot fails with assert in :ScheduleDAGRRList::PickNodeToScheduleBottomUp

Hi Pengxuan,

I just saw that the newly added AOSP buildbot allready builds LLVM very
nicely. However, it is still red due to the following assertion:

FAILED:
out/target/product/angler/obj_arm/STATIC_LIBRARIES/libskia_static_intermediates/src/core/SkOpts.o
/bin/bash -c "PWD=/proc/self/cwd ulimit -t 180; llvm.inst/bin/clang++
-I external/libjpeg-turbo -I external/libpng -I
external/skia/include/codec -I external/skia/include/private -I
external/skia/src/codec -I external/skia/src/core -I
external/skia/src/utils -I external/skia/include/c -I
external/skia/include/config -I external/skia/include/core -I
external/skia/include/pathops -I external/giflib -I
external/webp/include -I external/skia/include/android -I
external/skia/src/android -I external/skia/include/ports -I
external/skia/include/utils -I external/skia/include/images -I
external/skia/src/sfnt -I external/skia/src/image -I
external/skia/src/opts -I external/skia/include/gpu -I
external/skia/src/gpu -I external/skia/include/effects -I
external/skia/include/client/android -I external/skia/src/effects -I
external/skia/third_party/etc1 -I external/skia/third_party/ktx -I
external/skia/src/lazy -I external/expat/lib -I
external/freetype/include -I external/skia/include/utils/win -I
external/skia/src/ports -I external/skia/src/pdf -I
external/sfntly/cpp/src -I external/zlib -I external/dng_sdk -I
external/piex -I external/skia -I
out/target/product/angler/obj_arm/STATIC_LIBRARIES/libskia_static_intermediates
-I
out/target/product/angler/gen/STATIC_LIBRARIES/libskia_static_intermediates
-I libnativehelper/include/nativehelper \$(cat
out/target/product/angler/obj_arm/STATIC_LIBRARIES/libskia_static_intermediates/import_includes)
-I system/core/include -I system/media/audio/include -I
hardware/libhardware/include -I hardware/libhardware_legacy/include -I
hardware/ril/include -I libnativehelper/include -I
frameworks/native/include -I frameworks/native/opengl/include -isystem
frameworks/av/include -isystem out/target/product/angler/obj/include
-isystem device/huawei/angler/kernel-headers -isystem
hardware/qcom/msm8994/kernel-headers -isystem
bionic/libc/arch-arm/include -isystem bionic/libc/include -isystem
bionic/libc/kernel/uapi -isystem bionic/libc/kernel/uapi/asm-arm
-isystem bionic/libc/kernel/android/uapi -c -fno-exceptions
-Wno-multichar -ffunction-sections -fdata-sections -funwind-tables
-fstack-protector-strong -Wa,--noexecstack -Werror=format-security
-D_FORTIFY_SOURCE=2 -fno-short-enums -no-canonical-prefixes -DNDEBUG -g
-Wstrict-aliasing=2 -DANDROID -fmessage-length=0 -W -Wall -Wno-unused
-Winit-self -Wpointer-arith -DNDEBUG -UDEBUG
-fdebug-prefix-map=/proc/self/cwd=
-D__compiler_offsetof=__builtin_offsetof -Werror=int-conversion
-Wno-reserved-id-macro -Wno-format-pedantic
-Wno-unused-command-line-argument -fcolor-diagnostics
-Wno-expansion-to-defined -Werror=return-type -Werror=non-virtual-dtor
-Werror=address -Werror=sequence-point -Werror=date-time -nostdlibinc
-msoft-float -mfloat-abi=softfp -mfpu=neon -mcpu=cortex-a7
-D__ARM_FEATURE_LPAE=1 -target arm-linux-androideabi
-Bprebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/arm-linux-androideabi/bin
-Wsign-promo -Wno-inconsistent-missing-override -Wno-null-dereference
-fvisibility-inlines-hidden -std=gnu++14 -mthumb -Os
-fomit-frame-pointer -fno-strict-aliasing -fno-rtti -fPIC
-Wno-unused-parameter -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1
-DSKIA_IMPLEMENTATION=1 -Wno-error -fexceptions -fPIC -DqDNGBigEndian=0
-DSK_ARM_HAS_NEON -D_USING_LIBCXX -std=c++11 -fno-threadsafe-statics
-Werror=int-to-pointer-cast -Werror=pointer-to-int-cast
-Werror=address-of-temporary -Werror=return-type -Wno-error -O3 -mllvm
-polly -mllvm -polly-position=before-vectorizer -mllvm
-polly-process-unprofitable -MD -MF
out/target/product/angler/obj_arm/STATIC_LIBRARIES/libskia_static_intermediates/src/core/SkOpts.d
-o
out/target/product/angler/obj_arm/STATIC_LIBRARIES/libskia_static_intermediates/src/core/SkOpts.o
external/skia/src/core/SkOpts.cpp"
#0 0x00000000013c9c68 llvm::sys::PrintStackTrace(llvm::raw_ostream&)
(llvm.inst/bin/clang+++0x13c9c68)
#1 0x00000000013ca376 SignalHandler(int)
(llvm.inst/bin/clang+++0x13ca376)
#2 0x00007f978e97ed10 __restore_rt
(/lib/x86_64-linux-gnu/libpthread.so.0+0x10d10)
#3 0x0000000001c906a8 (anonymous
namespace)::ScheduleDAGRRList::PickNodeToScheduleBottomUp()
(llvm.inst/bin/clang+++0x1c906a8)
#4 0x0000000001c8f0d5 (anonymous
namespace)::ScheduleDAGRRList::Schedule()
(llvm.inst/bin/clang+++0x1c8f0d5)
#5 0x0000000001c16221 llvm::SelectionDAGISel::CodeGenAndEmitDAG()
(llvm.inst/bin/clang+++0x1c16221)
#6 0x0000000001c13b86
llvm::SelectionDAGISel::SelectAllBasicBlocks(llvm::Function const&)
(llvm.inst/bin/clang+++0x1c13b86)
#7 0x0000000001c10140
llvm::SelectionDAGISel::runOnMachineFunction(llvm::MachineFunction&)
(llvm.inst/bin/clang+++0x1c10140)
#8 0x000000000083e7a1 (anonymous
namespace)::ARMDAGToDAGISel::runOnMachineFunction(llvm::MachineFunction&)
(llvm.inst/bin/clang+++0x83e7a1)
#9 0x0000000000cdee22
llvm::MachineFunctionPass::runOnFunction(llvm::Function&)
(llvm.inst/bin/clang+++0xcdee22)
#10 0x0000000000fa55f4
llvm::FPPassManager::runOnFunction(llvm::Function&)
(llvm.inst/bin/clang+++0xfa55f4)
#11 0x0000000000fa5843 llvm::FPPassManager::runOnModule(llvm::Module&)
(llvm.inst/bin/clang+++0xfa5843)
#12 0x0000000000fa5d35 llvm::legacy::PassManagerImpl::run(llvm::Module&)
(llvm.inst/bin/clang+++0xfa5d35)
#13 0x000000000155a96e
clang::EmitBackendOutput(clang::DiagnosticsEngine&,
clang::HeaderSearchOptions const&, clang::CodeGenOptions const&,
clang::TargetOptions const&, clang::LangOptions const&, llvm::DataLayout
const&, llvm::Module*, clang::BackendAction,
std::unique_ptr<llvm::raw_pwrite_stream,
std::default_delete<llvm::raw_pwrite_stream> >)
(llvm.inst/bin/clang+++0x155a96e)
#14 0x0000000001ce3bc0
clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&)
(llvm.inst/bin/clang+++0x1ce3bc0)
#15 0x00000000021b0df5 clang::ParseAST(clang::Sema&, bool, bool)
(llvm.inst/bin/clang+++0x21b0df5)
#16 0x0000000001901478 clang::FrontendAction::Execute()
(llvm.inst/bin/clang+++0x1901478)
#17 0x00000000018c65d1
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&)
(llvm.inst/bin/clang+++0x18c65d1)
#18 0x000000000198b428
clang::ExecuteCompilerInvocation(clang::CompilerInstance*)
(llvm.inst/bin/clang+++0x198b428)
#19 0x00000000007bd60d cc1_main(llvm::ArrayRef<char const*>, char
const*, void*) (llvm.inst/bin/clang+++0x7bd60d)
#20 0x00000000007bbc2a main (llvm.inst/bin/clang+++0x7bbc2a)
#21 0x00007f978d547a40 __libc_start_main
/build/buildd/glibc-2.21/csu/libc-start.c:323:0
#22 0x00000000007b8979 _start (llvm.inst/bin/clang+++0x7b8979)

Do you happen to have a reduced test case for this or does there even
exist a bug report?

Best,
Tobias

http://llvm.org/PR30911

Michael

[resend from email address that is subscribed to this mailing list]

Interesting. It would be really good to get this resolved. I CCed a
couple of ARM people. Maybe they have an idea who can help us with
fixing this ARM code generation issue. Would be great if we could get
this buildbot green.

Best,
Tobias