Skip to content
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

Building rust/src/rt/rust_try.ll fails when building for arm-apple-darwin #11666

Closed
mz2 opened this issue Jan 19, 2014 · 10 comments
Closed

Building rust/src/rt/rust_try.ll fails when building for arm-apple-darwin #11666

mz2 opened this issue Jan 19, 2014 · 10 comments
Labels
O-ios Operating system: iOS

Comments

@mz2
Copy link

mz2 commented Jan 19, 2014

/Users/mz2/rust/build_ios/x86_64-apple-darwin/llvm/Release+Asserts/bin/llc -arm-enable-ehabi -arm-enable-ehabi-descriptors -filetype=obj -mtriple=arm-apple-darwin -relocation-model=pic -o arm-apple-darwin/rt/stage2/rust_try.o /Users/mz2/rust/src/rt/rust_try.ll
    Assertion failed: (TargetStreamer), function getTargetStreamer, file /Users/mz2/rust/src/llvm/include/llvm/MC/MCStreamer.h, line 173.
    0  llc                      0x00000001089cc2e8 llvm::sys::PrintStackTrace(__sFILE*) + 40
    1  llc                      0x00000001089cc7e4 SignalHandler(int) + 548
    2  libsystem_platform.dylib 0x00007fff847ab5aa _sigtramp + 26
    3  libsystem_platform.dylib 000000000000000000 _sigtramp + 2072332912
    4  llc                      0x00000001089cc5a6 abort + 22
    5  llc                      0x00000001089cc581 __assert_rtn + 81
    6  llc                      0x00000001081e80f6 llvm::ARMAsmPrinter::EmitUnwindingInstruction(llvm::MachineInstr const*) + 1462
    7  llc                      0x00000001081ebd76 llvm::ARMAsmPrinter::EmitInstruction(llvm::MachineInstr const*) + 118
    8  llc                      0x0000000108524bd9 llvm::AsmPrinter::EmitFunctionBody() + 3737
    9  llc                      0x00000001081e4788 llvm::ARMAsmPrinter::runOnMachineFunction(llvm::MachineFunction&) + 264
    10 llc                      0x00000001085f712d llvm::MachineFunctionPass::runOnFunction(llvm::Function&) + 125
    11 llc                      0x00000001088cd01b llvm::FPPassManager::runOnFunction(llvm::Function&) + 347
    12 llc                      0x00000001088cd2ab llvm::FPPassManager::runOnModule(llvm::Module&) + 43
    13 llc                      0x00000001088cd889 llvm::legacy::PassManagerImpl::run(llvm::Module&) + 1081
    14 llc                      0x00000001088cdc9d llvm::legacy::PassManager::run(llvm::Module&) + 13
    15 llc                      0x00000001080a8d8a main + 5002
    16 libdyld.dylib            0x00007fff845e25fd start + 1
    Stack dump:
    0.  Program arguments: /Users/mz2/rust/build_ios/x86_64-apple-darwin/llvm/Release+Asserts/bin/llc -arm-enable-ehabi -arm-enable-ehabi-descriptors -filetype=obj -mtriple=arm-apple-darwin -relocation-model=pic -o arm-apple-darwin/rt/stage2/rust_try.o /Users/mz2/rust/src/rt/rust_try.ll
    1.  Running pass 'Function Pass Manager' on module '/Users/mz2/rust/src/rt/rust_try.ll'.
    2.  Running pass 'ARM Assembly / Object Emitter' on function '@rust_try'
    make: *** [arm-apple-darwin/rt/stage2/rust_try.o] Illegal instruction: 4
@mz2
Copy link
Author

mz2 commented Jan 19, 2014

This is another iOS building related issue

@flaper87
Copy link
Contributor

Hey, thanks! Could you please edit the issue and put the report in a code section? https://help.github.com/articles/github-flavored-markdown#fenced-code-blocks

that should make it more readable.

@kud1ing
Copy link

kud1ing commented Jan 19, 2014

I can reproduce it. It's an error i have not encountered before.

@mz2
Copy link
Author

mz2 commented Jan 19, 2014

@flaper87 oops, looks like someone already corrected the reformatting (thanks!)

Also, just to give more detail, this happens at least with commit 53733c8, when configuring & compiling with "../configure --target=arm-apple-darwin && make" on OSX (Xcode 5, OSX Mavericks). The same does not happen with x86_64 darwin.

@alexcrichton
Copy link
Member

I'm building a rebased LLVM to see if LLVM master has fixed this.

@kud1ing
Copy link

kud1ing commented Jan 19, 2014

@alexcrichton: Thanks. Can you also tag this issue with "A-iOS"?

@alexcrichton
Copy link
Member

Sadly the abort is still there, although I think it's somewhere else now?

[~/code/rust2[master]] $ ./x86_64-apple-darwin/llvm/Release+Asserts/bin/llc -mtriple=arm-apple-darwin ./src/rt/rust_try.ll -filetype=obj -arm-enable-ehabi -arm-enable-ehabi-descriptors     [alex@rhea] │
0  llc                      0x000000010526d248 llvm::sys::PrintStackTrace(__sFILE*) + 40                                                                                                                 │
1  llc                      0x000000010526d744 SignalHandler(int) + 548                                                                                                                                  │
2  libsystem_platform.dylib 0x00007fff889795aa _sigtramp + 26                                                                                                                                            │
3  llc                      0x000000010525e488 llvm::FoldingSetImpl::FindNodeOrInsertPos(llvm::FoldingSetNodeID const&, void*&) + 72                                                                     │
4  llc                      0x0000000104a7bbd3 llvm::ARMAsmPrinter::EmitInstruction(llvm::MachineInstr const*) + 131                                                                                     │
5  llc                      0x0000000104dc1459 llvm::AsmPrinter::EmitFunctionBody() + 3657                                                                                                               │
6  llc                      0x0000000104a74758 llvm::ARMAsmPrinter::runOnMachineFunction(llvm::MachineFunction&) + 264                                                                                   │
7  llc                      0x0000000104e9055d llvm::MachineFunctionPass::runOnFunction(llvm::Function&) + 125                                                                                           │
8  llc                      0x000000010516d21b llvm::FPPassManager::runOnFunction(llvm::Function&) + 347                                                                                                 │
9  llc                      0x000000010516d4ab llvm::FPPassManager::runOnModule(llvm::Module&) + 43                                                                                                      │
10 llc                      0x000000010516da89 llvm::legacy::PassManagerImpl::run(llvm::Module&) + 1081                                                                                                  │
11 llc                      0x000000010516de9d llvm::legacy::PassManager::run(llvm::Module&) + 13                                                                                                        │
12 llc                      0x000000010493518a main + 5002                                                                                                                                               │
13 libdyld.dylib            0x00007fff8dee55fd start + 1                                                                                                                                                 │
14 libdyld.dylib            0x0000000000000006 start + 1913760266                                                                                                                                        │
Stack dump:                                                                                                                                                                                              │
0.      Program arguments: ./x86_64-apple-darwin/llvm/Release+Asserts/bin/llc -mtriple=arm-apple-darwin ./src/rt/rust_try.ll -filetype=obj -arm-enable-ehabi -arm-enable-ehabi-descriptors               │
1.      Running pass 'Function Pass Manager' on module './src/rt/rust_try.ll'.                                                                                                                           │
2.      Running pass 'ARM Assembly / Object Emitter' on function '@rust_try'                                                                                                                             │
zsh: segmentation fault  ./x86_64-apple-darwin/llvm/Release+Asserts/bin/llc -mtriple=arm-apple-darwin                                                                                                    │

@kud1ing
Copy link

kud1ing commented Jan 19, 2014

llvm-mirror/llvm@e99ebe7 removed the assertion that is triggered in our Master.

@kud1ing kud1ing mentioned this issue Jan 23, 2014
@kud1ing
Copy link

kud1ing commented Jun 17, 2014

Likely fixed by #14715

@steveklabnik
Copy link
Member

If #14715 didn't fix this, someone let me know. It's been quite a while since anyone has said anything here.

flip1995 pushed a commit to flip1995/rust that referenced this issue Oct 21, 2023
Document conflicting lints

Documents the outcome described in rust-lang/rust-clippy#11662 so that the situation can be avoided in the future by other individuals.

changelog: none
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
O-ios Operating system: iOS
Projects
None yet
Development

No branches or pull requests

5 participants