Skip to content

[clang] clang-18: fatal error: error in backend: Invalid size request on a scalable vector #73458

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
dmantipov opened this issue Nov 26, 2023 · 5 comments
Labels

Comments

@dmantipov
Copy link
Contributor

dmantipov commented Nov 26, 2023

irqdomain-5bc199-script.txt
irqdomain-5bc199-source.txt

Auto-generated reproducer attached. Rename irqdomain-5bc199-script.txt to irqdomain-5bc199.sh and irqdomain-5bc199-source.txt to irqdomain-5bc199.c, respectively.

@github-actions github-actions bot added the clang Clang issues not falling into any other category label Nov 26, 2023
@shafik shafik added the needs-reduction Large reproducer that should be reduced into a simpler form label Nov 27, 2023
@shafik
Copy link
Collaborator

shafik commented Nov 27, 2023

Do you have backtrace available?

There is a bug report with a similar error diagnostic here: #54423

@dmantipov
Copy link
Contributor Author

Sure, the reproducer still works as of ae86239e86e9e289167fad2d7465d254852ecb82:

#0  0x00007ffff045f100 in exit () from /lib64/libc.so.6
#1  0x00007ffff1db3d4c in llvm::sys::Process::Exit(int, bool) ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libLLVM-18git.so
#2  0x0000000000210343 in LLVMErrorHandler(void*, char const*, bool) ()
#3  0x00007ffff1d18e02 in llvm::report_fatal_error(llvm::Twine const&, bool) ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libLLVM-18git.so
#4  0x00007ffff1d18cd8 in llvm::report_fatal_error(char const*, bool) ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libLLVM-18git.so
#5  0x00007ffff1d6f609 in llvm::reportInvalidSizeRequest(char const*) ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libLLVM-18git.so
#6  0x00007ffff1d6f626 in llvm::TypeSize::operator unsigned long() const ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libLLVM-18git.so
#7  0x00007ffff686b181 in emitAddrOfFieldStorage(clang::CodeGen::CodeGenFunction&, clang::CodeGen::Address, clang::FieldDecl const*) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#8  0x00007ffff68546c8 in clang::CodeGen::CodeGenFunction::EmitLValueForField(clang::CodeGen::LValue, clang::FieldDecl const*) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#9  0x00007ffff68611db in clang::CodeGen::CodeGenFunction::EmitMemberExpr(clang::MemberExpr const*) ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#10 0x00007ffff685acbe in clang::CodeGen::CodeGenFunction::EmitLValueHelper(clang::Expr const*, clang::CodeGen::KnownNonNull_t) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#11 0x00007ffff685936d in clang::CodeGen::CodeGenFunction::EmitCheckedLValue(clang::Expr const*, clang::CodeGen::CodeGenFunction::TypeCheckKind) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#12 0x00007ffff68ac5a8 in (anonymous namespace)::ScalarExprEmitter::VisitMemberExpr(clang::MemberExpr*) ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#13 0x00007ffff689ce52 in clang::CodeGen::CodeGenFunction::EmitScalarExpr(clang::Expr const*, bool) ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#14 0x00007ffff6850ab1 in clang::CodeGen::CodeGenFunction::EmitAnyExpr(clang::Expr const*, clang::CodeGen::AggValueSlot, bool) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#15 0x00007ffff6851016 in clang::CodeGen::CodeGenFunction::EmitAnyExprToTemp(clang::Expr const*) ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#16 0x00007ffff68580f4 in clang::CodeGen::CodeGenFunction::EmitBoundsCheck(clang::Expr const*, clang::Expr const*, llvm::Value*, clang::QualType, bool) ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#17 0x00007ffff686a0a8 in clang::CodeGen::CodeGenFunction::EmitArraySubscriptExpr(clang::ArraySubscriptExpr const*, bool)::$_0::operator()(bool) const ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#18 0x00007ffff685a3d9 in clang::CodeGen::CodeGenFunction::EmitArraySubscriptExpr(clang::ArraySubscriptExpr const*, bool) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#19 0x00007ffff685a8d7 in clang::CodeGen::CodeGenFunction::EmitLValueHelper(clang::Expr const*, clang::CodeGen::
KnownNonNull_t) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#20 0x00007ffff685ad5e in clang::CodeGen::CodeGenFunction::EmitLValueHelper(clang::Expr const*, clang::CodeGen::KnownNonNull_t) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#21 0x00007ffff685ad5e in clang::CodeGen::CodeGenFunction::EmitLValueHelper(clang::Expr const*, clang::CodeGen::KnownNonNull_t) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#22 0x00007ffff6858e06 in EmitPointerWithAlignment(clang::Expr const*, clang::CodeGen::LValueBaseInfo*, clang::CodeGen::TBAAAccessInfo*, clang::CodeGen::KnownNonNull_t, clang::CodeGen::CodeGenFunction&) ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#23 0x00007ffff6858ac7 in EmitPointerWithAlignment(clang::Expr const*, clang::CodeGen::LValueBaseInfo*, clang::CodeGen::TBAAAccessInfo*, clang::CodeGen::KnownNonNull_t, clang::CodeGen::CodeGenFunction&) ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#24 0x00007ffff685ec2d in clang::CodeGen::CodeGenFunction::EmitUnaryOpLValue(clang::UnaryOperator const*) ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#25 0x00007ffff685add6 in clang::CodeGen::CodeGenFunction::EmitLValueHelper(clang::Expr const*, clang::CodeGen::KnownNonNull_t) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#26 0x00007ffff685936d in clang::CodeGen::CodeGenFunction::EmitCheckedLValue(clang::Expr const*, clang::CodeGen::CodeGenFunction::TypeCheckKind) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#27 0x00007ffff68a6fa0 in (anonymous namespace)::ScalarExprEmitter::VisitBinAssign(clang::BinaryOperator const*) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#28 0x00007ffff68a4468 in clang::StmtVisitorBase<std::add_pointer, (anonymous namespace)::ScalarExprEmitter, llvm::Value*>::Visit(clang::Stmt*) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#29 0x00007ffff689ce52 in clang::CodeGen::CodeGenFunction::EmitScalarExpr(clang::Expr const*, bool) ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#30 0x00007ffff6850ab1 in clang::CodeGen::CodeGenFunction::EmitAnyExpr(clang::Expr const*, clang::CodeGen::AggValueSlot, bool) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#31 0x00007ffff685095f in clang::CodeGen::CodeGenFunction::EmitIgnoredExpr(clang::Expr const*) ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#32 0x00007ffff6997ae5 in clang::CodeGen::CodeGenFunction::EmitStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#33 0x00007ffff6998371 in clang::CodeGen::CodeGenFunction::EmitSimpleStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#34 0x00007ffff6997a11 in clang::CodeGen::CodeGenFunction::EmitStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#35 0x00007ffff6999c15 in clang::CodeGen::CodeGenFunction::EmitDoStmt(clang::DoStmt const&, llvm::ArrayRef<clang::Attr const*>) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#36 0x00007ffff6997c00 in clang::CodeGen::CodeGenFunction::EmitStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#37 0x00007ffff6998371 in clang::CodeGen::CodeGenFunction::EmitSimpleStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#38 0x00007ffff6997a11 in clang::CodeGen::CodeGenFunction::EmitStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#39 0x00007ffff6999c15 in clang::CodeGen::CodeGenFunction::EmitDoStmt(clang::DoStmt const&, llvm::ArrayRef<clang::Attr const*>) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#40 0x00007ffff6997c00 in clang::CodeGen::CodeGenFunction::EmitStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#41 0x00007ffff6998c8d in clang::CodeGen::CodeGenFunction::EmitIfStmt(clang::IfStmt const&) ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#42 0x00007ffff6997c26 in clang::CodeGen::CodeGenFunction::EmitStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#43 0x00007ffff6998371 in clang::CodeGen::CodeGenFunction::EmitSimpleStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#44 0x00007ffff6997a11 in clang::CodeGen::CodeGenFunction::EmitStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#45 0x00007ffff6999c15 in clang::CodeGen::CodeGenFunction::EmitDoStmt(clang::DoStmt const&, llvm::ArrayRef<clang::Attr const*>) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#46 0x00007ffff6997c00 in clang::CodeGen::CodeGenFunction::EmitStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#47 0x00007ffff6998371 in clang::CodeGen::CodeGenFunction::EmitSimpleStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#48 0x00007ffff6997a11 in clang::CodeGen::CodeGenFunction::EmitStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#49 0x00007ffff6998c8d in clang::CodeGen::CodeGenFunction::EmitIfStmt(clang::IfStmt const&) ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#50 0x00007ffff6997c26 in clang::CodeGen::CodeGenFunction::EmitStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#51 0x00007ffff69a359c in clang::CodeGen::CodeGenFunction::EmitCompoundStmtWithoutScope(clang::CompoundStmt const&, bool, clang::CodeGen::AggValueSlot) ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#52 0x00007ffff69faeb8 in clang::CodeGen::CodeGenFunction::GenerateCode(clang::GlobalDecl, llvm::Function*, clang::CodeGen::CGFunctionInfo const&) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#53 0x00007ffff6a1a4e2 in clang::CodeGen::CodeGenModule::EmitGlobalFunctionDefinition(clang::GlobalDecl, llvm::GlobalValue*) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#54 0x00007ffff6a14009 in clang::CodeGen::CodeGenModule::EmitGlobalDefinition(clang::GlobalDecl, llvm::GlobalValue*) () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#55 0x00007ffff6a07f12 in clang::CodeGen::CodeGenModule::EmitDeferred() ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#56 0x00007ffff6a05cca in clang::CodeGen::CodeGenModule::Release() ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#57 0x00007ffff6aa96e2 in (anonymous namespace)::CodeGeneratorImpl::HandleTranslationUnit(clang::ASTContext&)
    () from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#58 0x00007ffff69eb996 in clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#59 0x00007ffff5695064 in clang::ParseAST(clang::Sema&, bool, bool) ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#60 0x00007ffff7412e17 in clang::FrontendAction::Execute() ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#61 0x00007ffff7391074 in clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#62 0x00007ffff7494ca7 in clang::ExecuteCompilerInvocation(clang::CompilerInstance*) ()
   from /home/antipov/.local/llvm-18.0.0/bin/../lib64/libclang-cpp.so.18git
#63 0x0000000000210177 in cc1_main(llvm::ArrayRef<char const*>, char const*, void*) ()
#64 0x000000000020d78d in ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, llvm::ToolContext const&) ()
#65 0x000000000020c597 in clang_main(int, char**, llvm::ToolContext const&) ()
#66 0x0000000000219df1 in main ()

@Endilll
Copy link
Contributor

Endilll commented Feb 6, 2024

I compiled Clang at the specified commit, and was able to reproduce.
Appears to be a post-17 regression that is currently fixed: https://godbolt.org/z/zrhG9hq64
I think it was fixed by #76348. @bwendling might be interested in additional test case.
Reduced by me and C-Reduce:

typedef struct irq_data {
  struct irq_domain *domain;
};

struct irq_domain {
  const char name;
  unsigned int revmap_size;
  struct irq_data *revmap[]
      __attribute__((__counted_by__(revmap_size)));
};

struct irq_data irq_domain_fix_revmap_d;
unsigned long irq_domain_fix_revmap_d_0;
static void irq_domain_fix_revmap() {
  *&irq_domain_fix_revmap_d.domain->revmap[irq_domain_fix_revmap_d_0] = 0;
}
void irq_domain_push_irq() { irq_domain_fix_revmap; }

Post-17 trunk crash:

pp.i:1:1: warning: typedef requires a name [-Wmissing-declarations]
    1 | typedef struct irq_data {
      | ^~~~~~~
pp.i:17:30: warning: expression result unused [-Wunused-value]
   17 | void irq_domain_push_irq() { irq_domain_fix_revmap; }
      |                              ^~~~~~~~~~~~~~~~~~~~~
clang: /home/user/endill/llvm-project/llvm/include/llvm/IR/DataLayout.h:652: TypeSize llvm::StructLayout::getElementOffset(unsigned int) const: Assertion `Idx < NumElements && "Invalid element idx!"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0.      Program arguments: /home/user/endill/ramdisk/llvm-build/bin/clang -cc1 -triple x86_64-unknown-linux-gnu -emit-obj -std=gnu11 -fsanitize=array-bounds -x c pp.i
1.      <eof> parser at end of file
2.      Per-file LLVM IR generation
3.      pp.i:14:13: Generating code for declaration 'irq_domain_fix_revmap'
 #0 0x000055af8bb07bc8 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x4365bc8)
 #1 0x000055af8bb0580e llvm::sys::RunSignalHandlers() (/home/user/endill/ramdisk/llvm-build/bin/clang+0x436380e)
 #2 0x000055af8bb08258 SignalHandler(int) Signals.cpp:0:0
 #3 0x00007f317325a510 (/lib/x86_64-linux-gnu/libc.so.6+0x3c510)
 #4 0x00007f31732a816c (/lib/x86_64-linux-gnu/libc.so.6+0x8a16c)
 #5 0x00007f317325a472 raise (/lib/x86_64-linux-gnu/libc.so.6+0x3c472)
 #6 0x00007f31732444b2 abort (/lib/x86_64-linux-gnu/libc.so.6+0x264b2)
 #7 0x00007f31732443d5 (/lib/x86_64-linux-gnu/libc.so.6+0x263d5)
 #8 0x00007f31732533a2 (/lib/x86_64-linux-gnu/libc.so.6+0x353a2)
 #9 0x000055af8bf59374 clang::CodeGen::CGBuilderTy::CreateStructGEP(clang::CodeGen::Address, unsigned int, llvm::Twine const&) CGAtomic.cpp:0:0
#10 0x000055af8c190383 emitAddrOfFieldStorage(clang::CodeGen::CodeGenFunction&, clang::CodeGen::Address, clang::FieldDecl const*) CGExpr.cpp:0:0
#11 0x000055af8c17506e clang::CodeGen::CodeGenFunction::EmitLValueForField(clang::CodeGen::LValue, clang::FieldDecl const*) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x49d306e)
#12 0x000055af8c1836f7 clang::CodeGen::CodeGenFunction::EmitMemberExpr(clang::MemberExpr const*) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x49e16f7)
#13 0x000055af8c17c94f clang::CodeGen::CodeGenFunction::EmitLValueHelper(clang::Expr const*, clang::CodeGen::KnownNonNull_t) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x49da94f)
#14 0x000055af8c17af6d clang::CodeGen::CodeGenFunction::EmitCheckedLValue(clang::Expr const*, clang::CodeGen::CodeGenFunction::TypeCheckKind) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x49d8f6d)
#15 0x000055af8c1e440d (anonymous namespace)::ScalarExprEmitter::VisitMemberExpr(clang::MemberExpr*) CGExprScalar.cpp:0:0
#16 0x000055af8c1d0a2d clang::CodeGen::CodeGenFunction::EmitScalarExpr(clang::Expr const*, bool) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x4a2ea2d)
#17 0x000055af8c170b43 clang::CodeGen::CodeGenFunction::EmitAnyExpr(clang::Expr const*, clang::CodeGen::AggValueSlot, bool) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x49ceb43)
#18 0x000055af8c17143d clang::CodeGen::CodeGenFunction::EmitAnyExprToTemp(clang::Expr const*) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x49cf43d)
#19 0x000055af8c17966f clang::CodeGen::CodeGenFunction::EmitBoundsCheck(clang::Expr const*, clang::Expr const*, llvm::Value*, clang::QualType, bool) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x49d766f)
#20 0x000055af8c18e803 clang::CodeGen::CodeGenFunction::EmitArraySubscriptExpr(clang::ArraySubscriptExpr const*, bool)::$_0::operator()(bool) const CGExpr.cpp:0:0
#21 0x000055af8c17bf32 clang::CodeGen::CodeGenFunction::EmitArraySubscriptExpr(clang::ArraySubscriptExpr const*, bool) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x49d9f32)
#22 0x000055af8c17c782 clang::CodeGen::CodeGenFunction::EmitLValueHelper(clang::Expr const*, clang::CodeGen::KnownNonNull_t) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x49da782)
#23 0x000055af8c17a20e EmitPointerWithAlignment(clang::Expr const*, clang::CodeGen::LValueBaseInfo*, clang::CodeGen::TBAAAccessInfo*, clang::CodeGen::KnownNonNull_t, clang::CodeGen::CodeGenFunction&) CGExpr.cpp:0:0
#24 0x000055af8c180a7f clang::CodeGen::CodeGenFunction::EmitUnaryOpLValue(clang::UnaryOperator const*) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x49dea7f)
#25 0x000055af8c17c5f3 clang::CodeGen::CodeGenFunction::EmitLValueHelper(clang::Expr const*, clang::CodeGen::KnownNonNull_t) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x49da5f3)
#26 0x000055af8c17af6d clang::CodeGen::CodeGenFunction::EmitCheckedLValue(clang::Expr const*, clang::CodeGen::CodeGenFunction::TypeCheckKind) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x49d8f6d)
#27 0x000055af8c1dd1cb (anonymous namespace)::ScalarExprEmitter::VisitBinAssign(clang::BinaryOperator const*) CGExprScalar.cpp:0:0
#28 0x000055af8c1d0a2d clang::CodeGen::CodeGenFunction::EmitScalarExpr(clang::Expr const*, bool) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x4a2ea2d)
#29 0x000055af8c170b43 clang::CodeGen::CodeGenFunction::EmitAnyExpr(clang::Expr const*, clang::CodeGen::AggValueSlot, bool) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x49ceb43)
#30 0x000055af8c170acc clang::CodeGen::CodeGenFunction::EmitIgnoredExpr(clang::Expr const*) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x49ceacc)
#31 0x000055af8c300f3b clang::CodeGen::CodeGenFunction::EmitStmt(clang::Stmt const*, llvm::ArrayRef<clang::Attr const*>) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x4b5ef3b)
#32 0x000055af8c30ea70 clang::CodeGen::CodeGenFunction::EmitCompoundStmtWithoutScope(clang::CompoundStmt const&, bool, clang::CodeGen::AggValueSlot) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x4b6ca70)
#33 0x000055af8c37bdd0 clang::CodeGen::CodeGenFunction::EmitFunctionBody(clang::Stmt const*) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x4bd9dd0)
#34 0x000055af8c37ca5b clang::CodeGen::CodeGenFunction::GenerateCode(clang::GlobalDecl, llvm::Function*, clang::CodeGen::CGFunctionInfo const&) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x4bdaa5b)
#35 0x000055af8c3a18cc clang::CodeGen::CodeGenModule::EmitGlobalFunctionDefinition(clang::GlobalDecl, llvm::GlobalValue*) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x4bff8cc)
#36 0x000055af8c39a0b3 clang::CodeGen::CodeGenModule::EmitGlobalDefinition(clang::GlobalDecl, llvm::GlobalValue*) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x4bf80b3)
#37 0x000055af8c38c530 clang::CodeGen::CodeGenModule::EmitDeferred() (/home/user/endill/ramdisk/llvm-build/bin/clang+0x4bea530)
#38 0x000055af8c389eca clang::CodeGen::CodeGenModule::Release() (/home/user/endill/ramdisk/llvm-build/bin/clang+0x4be7eca)
#39 0x000055af8c45ca88 (anonymous namespace)::CodeGeneratorImpl::HandleTranslationUnit(clang::ASTContext&) ModuleBuilder.cpp:0:0
#40 0x000055af8c369286 clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x4bc7286)
#41 0x000055af8da803a6 clang::ParseAST(clang::Sema&, bool, bool) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x62de3a6)
#42 0x000055af8c7a17cf clang::FrontendAction::Execute() (/home/user/endill/ramdisk/llvm-build/bin/clang+0x4fff7cf)
#43 0x000055af8c710b7d clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x4f6eb7d)
#44 0x000055af8c8355ae clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x50935ae)
#45 0x000055af8a34a522 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x2ba8522)
#46 0x000055af8a34691d ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, llvm::ToolContext const&) driver.cpp:0:0
#47 0x000055af8a345679 clang_main(int, char**, llvm::ToolContext const&) (/home/user/endill/ramdisk/llvm-build/bin/clang+0x2ba3679)
#48 0x000055af8a356c61 main (/home/user/endill/ramdisk/llvm-build/bin/clang+0x2bb4c61)
#49 0x00007f31732456ca (/lib/x86_64-linux-gnu/libc.so.6+0x276ca)
#50 0x00007f3173245785 __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x27785)
#51 0x000055af8a342ee1 _start (/home/user/endill/ramdisk/llvm-build/bin/clang+0x2ba0ee1)

@Endilll Endilll closed this as completed Feb 6, 2024
@Endilll Endilll added clang:codegen IR generation bugs: mangling, exceptions, etc. crash-on-valid compiler-rt:sanitizer c extension:gnu and removed clang Clang issues not falling into any other category needs-reduction Large reproducer that should be reduced into a simpler form labels Feb 6, 2024
@llvmbot
Copy link
Member

llvmbot commented Feb 6, 2024

@llvm/issue-subscribers-clang-codegen

Author: Dmitry Antipov (dmantipov)

[irqdomain-5bc199-script.txt](https://github.com/llvm/llvm-project/files/13468003/irqdomain-5bc199-script.txt) [irqdomain-5bc199-source.txt](https://github.com/llvm/llvm-project/files/13468004/irqdomain-5bc199-source.txt)

Auto-generated reproducer attached. Rename irqdomain-5bc199-script.txt to irqdomain-5bc199.sh and irqdomain-5bc199-source.txt to irqdomain-5bc199.c, respectively.

@llvmbot
Copy link
Member

llvmbot commented Feb 6, 2024

@llvm/issue-subscribers-c

Author: Dmitry Antipov (dmantipov)

[irqdomain-5bc199-script.txt](https://github.com/llvm/llvm-project/files/13468003/irqdomain-5bc199-script.txt) [irqdomain-5bc199-source.txt](https://github.com/llvm/llvm-project/files/13468004/irqdomain-5bc199-source.txt)

Auto-generated reproducer attached. Rename irqdomain-5bc199-script.txt to irqdomain-5bc199.sh and irqdomain-5bc199-source.txt to irqdomain-5bc199.c, respectively.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants