Skip to content

[LLVM] error in backend: Broken function found, compilation aborted #127428

Open
@zhangqingqing24630

Description

@zhangqingqing24630

I mention this issue to supplement the last issue(#127002). I'm sorry I didn't describe the clearance last time.
This problem cannot be reproduced in the release version, but can be reproduced in the debug version. My command to build the compiler is
`
cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Debug -DLLVM_ENABLE_PROJECTS="clang;lld" -S ~/llvm-project/llvm -DCMAKE_INSTALL_PREFIX= ~/build

make -j$(nproc)
`
I tried to debug the problem and found the call stack as follows.

Image

The function named verify is verified based on the 'broken' field and fails to be verified.

Image

Image

By setting hardware breakpoints, I can find that the change of Broken is that Attr is SExt type .and Attr is in the incompatible set.

Image

Image

Image

all incompatible types are added because Ty is a structure type.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions