<html>
    <head>
      <base href="https://bugs.llvm.org/">
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - bug in code generation for aarch64 target reg-to-reg copy"
   href="https://bugs.llvm.org/show_bug.cgi?id=46996">46996</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>bug in code generation for aarch64 target reg-to-reg copy
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>libraries
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>10.0
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>PC
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>Backend: AArch64
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>unassignedbugs@nondot.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>vhaenel@anaconda.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>arnaud.degrandmaison@arm.com, llvm-bugs@lists.llvm.org, smithp352@googlemail.com, Ties.Stuij@arm.com
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Compile with assertions enabled and then try following reproducer:

```
; ModuleID = 'simplified.ll'
source_filename = "<string>"
target datalayout =
"e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "aarch64-linux-gnu"
define [3 x { double, i1 }] @"broken"() local_unnamed_addr #0 {
entry:
  ret [3 x { double, i1 }] zeroinitializer
}
```

Then reproduce with:

```
llc -march=aarch64 simplified.ll                                                
unimplemented reg-to-reg copy
UNREACHABLE executed at
/Users/vhaenel/git/llvm-project/llvm/lib/Target/AArch64/AArch64InstrInfo.cpp:2818!
Stack dump:
0.      Program arguments: git/llvm-build-10.0.1/bin/llc -march=aarch64
simplified.ll
1.      Running pass 'Function Pass Manager' on module 'simplified.ll'.
2.      Running pass 'Post-RA pseudo instruction expansion pass' on function
'@broken'
0  llc                      0x0000000106fe4058
llvm::sys::PrintStackTrace(llvm::raw_ostream&) + 40
1  llc                      0x0000000106fe2df8 llvm::sys::RunSignalHandlers() +
248
2  llc                      0x0000000106fe466d SignalHandler(int) + 285
3  libsystem_platform.dylib 0x00007fff7200f5fd _sigtramp + 29
4  libsystem_platform.dylib 0x000000000000004c _sigtramp + 18446603338603498092
5  libsystem_c.dylib        0x00007fff71ee5808 abort + 120
6  llc                      0x0000000107aaf68e
llvm::llvm_unreachable_internal(char const*, char const*, unsigned int) + 462
7  llc                      0x000000010600f8a8
llvm::AArch64InstrInfo::copyPhysReg(llvm::MachineBasicBlock&,
llvm::MachineInstrBundleIterator<llvm::MachineInstr, false>, llvm::DebugLoc
const&, llvm::MCRegister, llvm::MCRegister, bool) const + 6856
8  llc                      0x000000010647758e (anonymous
namespace)::ExpandPostRA::runOnMachineFunction(llvm::MachineFunction&) + 2942
9  llc                      0x000000010656555d
llvm::MachineFunctionPass::runOnFunction(llvm::Function&) + 349
10 llc                      0x00000001068e7928
llvm::FPPassManager::runOnFunction(llvm::Function&) + 1064
11 llc                      0x00000001068e7bf8
llvm::FPPassManager::runOnModule(llvm::Module&) + 72
12 llc                      0x00000001068e80f2
llvm::legacy::PassManagerImpl::run(llvm::Module&) + 1026
13 llc                      0x0000000105aabf53 compileModule(char**,
llvm::LLVMContext&) + 9219
14 llc                      0x0000000105aa97bc main + 1404
15 libdyld.dylib            0x00007fff71e16cc9 start + 1
[1]    3621 abort (core dumped)  git/llvm-build-10.0.1/bin/llc -march=aarch64
simplified.ll
git/llvm-build-10.0.1/bin/llc -march=aarch64 simplified.ll  0.02s user 9.80s
system 47% cpu 20.569 tot
```</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>