<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=http://email.email.llvm.org/c/eJztWd9zm7oS_mvIiyYeEL8f_OCmzbT3Nm0m6T2vjJCETQvIVxJJ_N_flQAbiHtPmjo-5-F4PLaQ0O633-5qhcgF2y2_CI0IqsumrEmFKFEc5TtEmh2qOWkUcnCStxo14hGJptohJ_4Q_htVZcMVkkRvuER6QxoUum7f7eDUcd877qr7pRQ5gVvoXQOixwNO5PZfe_lYCwWTAzfnRGnHX4EmB1-vSw2_t6LarXmpTHsrxXf4k4IBaAIt2jLzlzv4nZacG8g1-cGL8gmgwFWAfiaqrkp5mbdlxcz8shm6tATTK6I5uuyuxWVVPdSlRDlh-8GFGevAT2cBeFB7vRE1h7_esGP6jdBLYw-nAxzTW4Ip19-IXHPT-_nzHzef7qBxI1hb8W-9llI0C7rdgi4_ioxGOxto81d_kKrlCGbffvx0L1pJue0xvOzveVcJ-sPBKwdfoeO9baPKdcMZKhv9_Do1KldKcWmQIHCj0qwTQth3Qnmjs6JsgNhEtZRypYRUi5yvDcuJmQ8iRyPc3mr7wWf-e_geHQZiI_jCHz4Mo8dSbxAQ1tagVwFCZFhDOXBFNxCpdas0yjliZVFwCfeg3FgKXsEOjlFByoqzRefL288fVvcfQHlelyY38naNJN8KqZEWaKP1Vhk78XXn0k2bL6ioe28-d2qpVGvdD0lluKNVyzjkDEdUErWBiKI_IHIo79Xfa-hArK2Na7suF4bSWynWktQHK18cZSeLclDnu8h9cuEThkWCGSWMMYqs5db3aqe6xq2EMLG2fDPGgfMON0nymAkFuUpq682rPqRelTQD6zZp7tutcRS0_tOY9L--h5AllVoA76A4jEL4dQ_WeHNreOqjGfROxEfwXsUhPZMHUTKbIm-PN_LxFC-e4c3zAB9j_65tJrDVPnlOBnhA2q1BaTQF6s-JjUOG5kyeyeuBG0_BBT24uOAce0FepImLskxypYXkGSS6pauX_pREWRRcQm1rny7XTdsNbPUG4pctlFi4UHjcJw-DlH3tM2rCsRrXj4Mij6FmlqYOQiL2CbkGYfTyPmX4X1_2l3iBY7hQ1g5oLBbmaqcY3xp62s5M6HiwaACZqYhG9MLGuTc1OJohiVLsIZILa-nLkGjWsWFnWSXJTEk8VRJFQUKAVWJrRGaW2CwnL7e9m7dvdCrTqcpkrjJ08Qt8R43XIus134UpE6-l48ilPC5i_81r6Xl3C8GBRLMEunODmctHZhiBXYtxDU7s2lQ0DcAAUr4IZvCO6LiDIi-afmU_JugZNATijInRmbkI8IwLb8pFAuGQv8yEPS0PEKxfGw45Sm3_mJnDfNMyt3zdntnkxPOmJuO5yUlUvMLkwd7fqTSvNSlIpyb5M5N8ytjIpP3WphcoBg0jT33dctkZ2SXwocaam69Eo_mT7kP8MHavYeuwvuPFmRnwXD-cUhBMKMBpgItxUktIUaW5HGwfe7XbhdvbYG9ckTo3j1fxhJ4OiAnesfnzfV0vRVguhRz2978up1sf3oLRqy56Bx56PvEsoMI5m2Hhof3zTjbEfrbptzb-1SiBxLqkpLrjqq3sxuLXWZwso2dz3YfeupusbB7ED1PyDiavml3GiCajlXsM8qAkepYkz71rdjTKeKl_OoIWhepsv9dmL5CXWnWbkKzouV5sTC1z_amjoomjYuJGPD04aph7av8MVJ0y0F9HSDze6hpC4ikhKSvoeCkcgodfS1HffP50d2ejS47W9_9_y_ixbrT6XZ2D9EnsHdNnntSmwt-XpIJ1oTdhd0zU8fwZWWk3gTdr-aeBPUkIIG5fNVY_XxpPrudkS-d4mbk-VoJmkZfMIq_AtHj1mnl6-ifD_6TBX5cGv15mTg0iOnkZSmdlyPPT6FdD4e2oPueic5oyht3ZYsKDYvyQYlr7BL0h9oi5f9KmGyItqNk2frxVPxrqe3e1Tfnflmdbbdaog4AbXgu5e9eaA-VJ5jFeEPBhxnjFzbuAn82BdDMuedUO-u8B7my1JUmm4eDNw4HG_unC4e0NwrMFA08fwnGUB6GLakD-O1i0EJVy5of9zzqGc6HpUQj2p2drYZwXMcoyc3yWKU2kzgZ8LznNo8qcvdljzK5pB60ce7LnBzP1wZwR3yWoU9yf8J3gxYc9AkwZiN4fAa7M-Sa39ZIKye2LGM4O7zSHl5YXbOmz1E_JBWn1Rsjlo7JALlpZLV__kiiEZ5jwYrPkqcuJF-Y0DtMk94IkcZMQs4B5JA09H19UJOeVWjohrKW4D_1ONnbC9xe_j6FcYhdj1_Owl-LYSxe-D5QEESN5FBVuwZ3A5RAC1cLIWQi5vpBLKzJv1-Y9bgVOUIdBouyRJ7eQAaEudWUvTPWADjQ-D9RieIEHO4LmwkJbWlz_A7YNixU>53165</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [MLIR] Translation to LLVM broken
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            mlir:llvm
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          wsmoses
      </td>
    </tr>
</table>

<pre>
    Not a minimal case by any means (but now only ~5K lines rather than 500K lines)

cc @ftynse 

```
wmoses@beast:~/git/Polygeist/proj/rodinia/cuda/b+tree (makefix) $ ~/git/Polygeist/mlir-build/bin/mlir-translate -mlir-to-llvmir badtranslate.mlir
mlir-translate: /home/wmoses/git/Polygeist/llvm-project/mlir/lib/Target/LLVMIR/ModuleTranslation.cpp:366: mlir::Value getPHISourceValue(mlir::Block*, mlir::Block*, unsigned int, unsigned int): Assertion `std::adjacent_find(successors.begin(), successors.end()) == successors.end() && "successors with arguments in LLVM branches must be different blocks"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.      Program arguments: /home/wmoses/git/Polygeist/mlir-build/bin/mlir-translate -mlir-to-llvmir badtranslate.mlir
 #0 0x000055f82dcadddc llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /home/wmoses/git/Polygeist/llvm-project/llvm/lib/Support/Unix/Signals.inc:565:0
 #1 0x000055f82dcade93 PrintStackTraceSignalHandler(void*) /home/wmoses/git/Polygeist/llvm-project/llvm/lib/Support/Unix/Signals.inc:632:0
 #2 0x000055f82dcabb42 llvm::sys::RunSignalHandlers() /home/wmoses/git/Polygeist/llvm-project/llvm/lib/Support/Signals.cpp:96:0
 #3 0x000055f82dcad75d SignalHandler(int) /home/wmoses/git/Polygeist/llvm-project/llvm/lib/Support/Unix/Signals.inc:407:0
 #4 0x00007fee214bf980 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x12980)
 #5 0x00007fee20374fb7 raise /build/glibc-S9d2JN/glibc-2.27/signal/../sysdeps/unix/sysv/linux/raise.c:51:0
 #6 0x00007fee20376921 abort /build/glibc-S9d2JN/glibc-2.27/stdlib/abort.c:81:0
 #7 0x00007fee2036648a __assert_fail_base /build/glibc-S9d2JN/glibc-2.27/assert/assert.c:89:0
 #8 0x00007fee20366502 (/lib/x86_64-linux-gnu/libc.so.6+0x30502)
 #9 0x000055f82ce7f73e getPHISourceValue(mlir::Block*, mlir::Block*, unsigned int, unsigned int) /home/wmoses/git/Polygeist/llvm-project/mlir/lib/Target/LLVMIR/ModuleTranslation.cpp:364:0
#10 0x000055f82ce7fd0e mlir::LLVM::detail::connectPHINodes(mlir::Region&, mlir::LLVM::ModuleTranslation const&) /home/wmoses/git/Polygeist/llvm-project/mlir/lib/Target/LLVMIR/ModuleTranslation.cpp:424:0
#11 0x000055f82ce8239b mlir::LLVM::ModuleTranslation::convertOneFunction(mlir::LLVM::LLVMFuncOp) /home/wmoses/git/Polygeist/llvm-project/mlir/lib/Target/LLVMIR/ModuleTranslation.cpp:811:0
#12 0x000055f82ce8286f mlir::LLVM::ModuleTranslation::convertFunctions() /home/wmoses/git/Polygeist/llvm-project/mlir/lib/Target/LLVMIR/ModuleTranslation.cpp:849:0
#13 0x000055f82ce83cdd mlir::translateModuleToLLVMIR(mlir::Operation*, llvm::LLVMContext&, llvm::StringRef) /home/wmoses/git/Polygeist/llvm-project/mlir/lib/Target/LLVMIR/ModuleTranslation.cpp:1035:0
#14 0x000055f82c2942fe mlir::registerToLLVMIRTranslation()::'lambda'(mlir::ModuleOp, llvm::raw_ostream&)::operator()(mlir::ModuleOp, llvm::raw_ostream&) const /home/wmoses/git/Polygeist/llvm-project/mlir/lib/Target/LLVMIR/ConvertToLLVMIR.cpp:29:0
#15 0x000055f82c2945f1 std::_Function_handler<mlir::LogicalResult (mlir::ModuleOp, llvm::raw_ostream&), mlir::registerToLLVMIRTranslation()::'lambda'(mlir::ModuleOp, llvm::raw_ostream&)>::_M_invoke(std::_Any_data const&, mlir::ModuleOp&&, llvm::raw_ostream&) /usr/include/c++/7/bits/std_function.h:303:0
#16 0x000055f82c7a06e9 std::function<mlir::LogicalResult (mlir::ModuleOp, llvm::raw_ostream&)>::operator()(mlir::ModuleOp, llvm::raw_ostream&) const /usr/include/c++/7/bits/std_function.h:707:0
#17 0x000055f82c79dfcd mlir::TranslateFromMLIRRegistration::TranslateFromMLIRRegistration(llvm::StringRef, std::function<mlir::LogicalResult (mlir::ModuleOp, llvm::raw_ostream&)> const&, std::function<void (mlir::DialectRegistry&)> const&)::'lambda'(llvm::SourceMgr&, llvm::raw_ostream&, mlir::MLIRContext*)::operator()(llvm::SourceMgr&, llvm::raw_ostream&, mlir::MLIRContext*) const /home/wmoses/git/Polygeist/llvm-project/mlir/lib/Translation/Translation.cpp:107:0
#18 0x000055f82c79f2cf std::_Function_handler<mlir::LogicalResult (llvm::SourceMgr&, llvm::raw_ostream&, mlir::MLIRContext*), mlir::TranslateFromMLIRRegistration::TranslateFromMLIRRegistration(llvm::StringRef, std::function<mlir::LogicalResult (mlir::ModuleOp, llvm::raw_ostream&)> const&, std::function<void (mlir::DialectRegistry&)> const&)::'lambda'(llvm::SourceMgr&, llvm::raw_ostream&, mlir::MLIRContext*)>::_M_invoke(std::_Any_data const&, llvm::SourceMgr&, llvm::raw_ostream&, mlir::MLIRContext*&&) /usr/include/c++/7/bits/std_function.h:303:0
#19 0x000055f82c7a1396 std::function<mlir::LogicalResult (llvm::SourceMgr&, llvm::raw_ostream&, mlir::MLIRContext*)>::operator()(llvm::SourceMgr&, llvm::raw_ostream&, mlir::MLIRContext*) const /usr/include/c++/7/bits/std_function.h:707:0
#20 0x000055f82c79e4ff mlir::mlirTranslateMain(int, char**, llvm::StringRef)::'lambda'(std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer> >, llvm::raw_ostream&)::operator()(std::unique_ptr<llvm::MemoryBuffer, std::default_delete<llvm::MemoryBuffer> >, llvm::raw_ostream&) const /home/wmoses/git/Polygeist/llvm-project/mlir/lib/Translation/Translation.cpp:188:0
#21 0x000055f82c79ec73 mlir::mlirTranslateMain(int, char**, llvm::StringRef) /home/wmoses/git/Polygeist/llvm-project/mlir/lib/Translation/Translation.cpp:203:0
#22 0x000055f82c26b450 main /home/wmoses/git/Polygeist/llvm-project/mlir/tools/mlir-translate/mlir-translate.cpp:34:0
#23 0x00007fee20357bf7 __libc_start_main /build/glibc-S9d2JN/glibc-2.27/csu/../csu/libc-start.c:344:0
#24 0x000055f82c26b30a _start (/home/wmoses/git/Polygeist/mlir-build/bin/mlir-translate+0x9d30a)
Aborted (core dumped)
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJztWd9zozYQ_mvIiyYeEL8f_ODLXabXXu4yybWvjJCETQ-QK4kk_u-7EmAD8bW51HH7UI_HFhLa3e_bXa0QuWC75WehEUF12ZQ1qRAliqN8h0izQzUnjUIOTvJWo0Y8ItFUO-TEH8JfUFU2XCFJ9IZLpDekQaHr9t0OTh33veOuul9KkRO4hd41IHo84ERu_7WXj7VQMDlwc06UdvwVaHLw9brU8Hsrqt2al8q0t1L8Dn9SMDCaQIu2zPzlDn6nJefG5Jp840X5BKbAVYC-J6quSnmZt2XFzPyyGbq0BOgV0Rxddtfisqoe6lKinLD94MKMdcZPZ4HxoPZ6I2oOfz2wY_qN0EuDh9PBHNNbApTrr0Suuen99Om3m4930LgRrK34115LKZoF3W5Blx9FRqOdDbT5q99I1XIEs29_-ngvWkm57TG87O95Vwn6zcErB1-h471to8p1wxkqG_38OjUqV0pxaSxB4EalWSeEsN8J5Y3OirIBYhPVUsqVElItcr42LCdmPogcjXB7q-0Hn_nv4Xt0GIiN4At_-DCMHku9QUBYW4NeBRYiwxrKgSu6gUitW6VRzhEri4JLuAflBil4BTs4RgUpK84WnS9vP31Y3X8A5XldmtzI2zWSfCukRlqgjdZbZXDi686lmzZfUFH33nzu1FKp1rofkspwR6uWccgZjqgkagMRRb9B5FDeq7_X0IFYWxvXdl0uDKW3UqwlqQ8oXxxlJ4tyUOe7yH1y4ROGRYIZJYwxiixy63u1U13jVkKYWCxfDThw3uEmSR4zoSBXSW29edWH1KuSZmDdJs19uzWOgtavjUn_63sIWVKpBfAOisMohF_3gMabo-Gpj2amdyJ-Au9VHNIzeRAlsyny9vZGPp7ai2f25nmAj7F_1zYTs9U-eU5m8GBptwal0dRQf05sHDI0Z_JMXg_ceGpc0BsXF5xjL8iLNHFRlkmutJA8g0S3dPXSn5Ioi4JLqG3t0-W6abuBrd5A_LKFEgsXCo_75GGQsq99Rk04VuP6cVDkMdTM0tRBSMQ-IdcgjF7epwz__Hl_iRc4hgtlcUBjsTBXO8X41tDTdjCh48FaA5aZimhEL2yce1PA0cySKMUeIrmwSF9miWYdG3aWVZLMlMRTJVEUJARYJbZGZGaJzXLycuzdvH2jU5lOVSZzlaGLX-A7arwWWa_5LkyZeC0dRy7lcRH7b15Lz7tbCA4kmiXQnQNmLh_BMAK7FuManNi1qWgaMANI-SyYsXdExx0UedH0K_sxQc9MQyDOQIzOzEWAZ1x4Uy4SCIf8ZRD2tDxAsH5pOOQotf1jZg7zTcvc8mV7ZsiJ500h4znkJCpeAXnA-08qzWshBekUkj-D5FPGRpD2W5teoBg0jDz1ZctlB7JL4EONNTdfiUbzJ92H-GHsXsPWYX3HizMz4Ll-OKUgmFCA0wAX46SWkKJKczlgH3u124Xb22BvXJE6N49X8YSezhATvGP4831dL0VYLoUc9vc_LqdbH96C0asuegceej7xLKDCOZth4aH98042xH626bc2_tUogcS6pKS646qt7Mbix1mcLKNnc92HHt1NVjYP4pspeQfIq2aXMaLJaOUeG3lQEj1LkufeNTsaZbzUPx1Bi0J1tt9rsxfIS626TUhW9FwvNqaWuf7UUdHEUTFxI54eHDXMPbV_BqpOGeivIyQeb3UNIfGUkJQVdLwUDsHDr6Wobz59vLuz0SVH6_tf3zJ-rButflfnIH0Se8f0mSe1qfD3JalgXegh7I6JOp4_I5R2E3izln8b2JOEAOL2VWP1_aXx5HpOtnSOl5nrYyVoFnnJLPIKTItXr5mnp38y_H8a_Htp8ONl5tRGRCcvQ-msDHl-Gv1oKLwd1edcdE5TxrA7W0x4UIwfUkxrn6A3xB4x90_adEOkNWq2jR9v1Y-G-t5dbVP-0fJsq80adRBww2shd-9ac6A8yTzGCwI-zBivuHkX8L05kG7GJa_aQf83jDtbbUmSaTh483CgsX-6cHh7QHi2YODpQziO8iB0UQ2W_xNbtBCVcuaH_c86hnOh6VEI9qdna2GcFzHKMnN8lilNpM4G-15ymkeVOXuzx5hd0w5aOfZkzw9m6oM5I75LUKe4P-E7wYsPewSYMhC9PwJcmfNNbuslFZLbFzGcHd5pDi8tL9jSZ6mfkgtd6oovnfCdWQad8D0aH2xpMbyJgtLWXLSyWr7-DVIIDzjhxWaZxnFCwtjLkyTkHon8MMlJmJAkTHzqx_FFRXJeKWOTg3GfF51sDAZelEvsYux6HvZSHHvpwvcBbRAxkkdR4RbcCVwO3q0WZtJCyPWFXFqj8nZtXtFWwK86DBJlTzMtCUY-afVGyOWjsq65sPYvrfF_AuINdYw">