Skip to content

Pararrer codegen + NEON vector instructions = crashing code #32359

Closed
@MagaTailor

Description

@MagaTailor

On ARM, I had a crashing exa -l binary and was going to chalk it up to buggy or miscompiled llvm.
It turned out, however, it was the combination of -C codegen-units and +neon that was producing broken code. Turn off either of them and all's fine again.

I believe parallel codegen is a Rust feature so maybe it's a case of LLVM being used improperly on ARM?

Full command line:
-C target-cpu=cortex-a5 -C target-feature=+vfp4,+neon -C llvm-args=-force-target-max-vector-interleave=4 -C codegen-units=4 -C link-args=-s

rustc 1.9.0-dev (1a019dc86 2016-03-11)
binary: rustc
commit-hash: 1a019dc86de1459809f776b869e36f8e71a7665a
commit-date: 2016-03-11
host: arm-unknown-linux-gnueabihf

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions