@@ -664,16 +664,17 @@ bool InstExpander::visitInstruction(Instruction& I) {
664664#if 1
665665 errs () << " I = " << I << ' \n ' ;
666666#endif
667- IGC_ASSERT_EXIT_MESSAGE ( 0 , " UNKNOWN INSTRUCTION is BEING EXPANDED!" );
667+ llvm_unreachable ( " UNKNOWN INSTRUCTION is BEING EXPANDED!" );
668668 return false ;
669669}
670670
671671bool InstExpander::visitRet (ReturnInst& RI) {
672- if (Value * V = RI.getReturnValue ())
672+ if (Value * V = RI.getReturnValue ())
673673 {
674674 // TODO: Add 64-bit return value support when function/subroutine call is supported.
675675 IGC_ASSERT (nullptr != Emu);
676- IGC_ASSERT_EXIT_MESSAGE (false == Emu->isInt64 (V), " TODO: NOT IMPLEMENTED YET!" );
676+ if (Emu->isInt64 (V))
677+ llvm_unreachable (" TODO: NOT IMPLEMENTED YET!" );
677678 }
678679 return false ;
679680}
@@ -743,25 +744,29 @@ bool InstExpander::visitMul(BinaryOperator& BinOp) {
743744
744745bool InstExpander::visitSDiv (BinaryOperator& BinOp) {
745746 IGC_ASSERT (nullptr != Emu);
746- IGC_ASSERT_EXIT_MESSAGE (false == Emu->isInt64 (&BinOp), " There should not be `sdiv` which is already emulated by library call." );
747+ if (Emu->isInt64 (&BinOp))
748+ llvm_unreachable (" There should not be `sdiv` which is already emulated by library call." );
747749 return false ;
748750}
749751
750752bool InstExpander::visitUDiv (BinaryOperator& BinOp) {
751753 IGC_ASSERT (nullptr != Emu);
752- IGC_ASSERT_EXIT_MESSAGE (false == Emu->isInt64 (&BinOp), " There should not be `udiv` which is already emulated by library call." );
754+ if (Emu->isInt64 (&BinOp))
755+ llvm_unreachable (" There should not be `udiv` which is already emulated by library call." );
753756 return false ;
754757}
755758
756759bool InstExpander::visitSRem (BinaryOperator& BinOp) {
757760 IGC_ASSERT (nullptr != Emu);
758- IGC_ASSERT_EXIT_MESSAGE (false == Emu->isInt64 (&BinOp), " There should not be `srem` which is already emulated by library call." );
761+ if (Emu->isInt64 (&BinOp))
762+ llvm_unreachable (" There should not be `srem` which is already emulated by library call." );
759763 return false ;
760764}
761765
762766bool InstExpander::visitURem (BinaryOperator& BinOp) {
763767 IGC_ASSERT (nullptr != Emu);
764- IGC_ASSERT_EXIT_MESSAGE (false == Emu->isInt64 (&BinOp), " There should not be `urem` which is already emulated by library call." );
768+ if (Emu->isInt64 (&BinOp))
769+ llvm_unreachable (" There should not be `urem` which is already emulated by library call." );
765770 return false ;
766771}
767772
@@ -1226,14 +1231,15 @@ bool InstExpander::visitAtomicCmpXchg(AtomicCmpXchgInst& ACXI) {
12261231 Value* V = ACXI.getCompareOperand ();
12271232 IGC_ASSERT (nullptr != V);
12281233 IGC_ASSERT (nullptr != Emu);
1229- IGC_ASSERT_EXIT_MESSAGE ( false == Emu->isInt64 (V), " TODO: NOT IMPLEMENTED YET! " );
1230-
1234+ if ( Emu->isInt64 (V))
1235+ llvm_unreachable ( " TODO: NOT IMPLEMENTED YET! " );
12311236 return false ;
12321237}
12331238
12341239bool InstExpander::visitAtomicRMW (AtomicRMWInst& RMW) {
12351240 IGC_ASSERT (nullptr != Emu);
1236- IGC_ASSERT_EXIT_MESSAGE (false == Emu->isInt64 (&RMW), " TODO: NOT IMPLEMENTED YET!" );
1241+ if (Emu->isInt64 (&RMW))
1242+ llvm_unreachable (" TODO: NOT IMPLEMENTED YET!" );
12371243 return false ;
12381244}
12391245
@@ -2001,7 +2007,7 @@ bool InstExpander::visitCall(CallInst& Call) {
20012007 }
20022008
20032009 // TODO: Add i64 emulation support.
2004- IGC_ASSERT_EXIT_MESSAGE ( 0 , " TODO: NOT IMPLEMENTED YET!" );
2010+ llvm_unreachable ( " TODO: NOT IMPLEMENTED YET!" );
20052011 return false ;
20062012}
20072013
@@ -2027,7 +2033,8 @@ bool InstExpander::visitSelect(SelectInst& SI) {
20272033bool InstExpander::visitVAArg (VAArgInst& VAAI) {
20282034 // TODO: Add i64 emulation support.
20292035 IGC_ASSERT (nullptr != Emu);
2030- IGC_ASSERT_EXIT_MESSAGE (false == Emu->isInt64 (&VAAI), " TODO: NOT IMPLEMENTED YET!" );
2036+ if (Emu->isInt64 (&VAAI))
2037+ llvm_unreachable (" TODO: NOT IMPLEMENTED YET!" );
20312038 return false ;
20322039}
20332040
@@ -2103,22 +2110,25 @@ bool InstExpander::visitInsertElement(InsertElementInst& IEI) {
21032110bool InstExpander::visitExtractValue (ExtractValueInst& EVI) {
21042111 // TODO: Add i64 emulation support.
21052112 IGC_ASSERT (nullptr != Emu);
2106- IGC_ASSERT_EXIT_MESSAGE (false == Emu->isInt64 (&EVI), " TODO: NOT IMPLEMENTED YET!" );
2113+ if (Emu->isInt64 (&EVI))
2114+ llvm_unreachable (" TODO: NOT IMPLEMENTED YET!" );
21072115 return false ;
21082116}
21092117
21102118bool InstExpander::visitInsertValue (InsertValueInst& IVI) {
21112119 // TODO: Add i64 emulation support.
21122120 IGC_ASSERT (nullptr != Emu);
21132121 IGC_ASSERT (0 < IVI.getNumOperands ());
2114- IGC_ASSERT_EXIT_MESSAGE (false == Emu->isInt64 (IVI.getOperand (1 )), " TODO: NOT IMPLEMENTED YET!" );
2122+ if (Emu->isInt64 (IVI.getOperand (1 )))
2123+ llvm_unreachable (" TODO: NOT IMPLEMENTED YET!" );
21152124 return false ;
21162125}
21172126
21182127bool InstExpander::visitLandingPad (LandingPadInst& LPI) {
21192128 // TODO: Add i64 emulation support.
21202129 IGC_ASSERT (nullptr != Emu);
21212130 IGC_ASSERT (0 < LPI.getNumOperands ());
2122- IGC_ASSERT_EXIT_MESSAGE (false == Emu->isInt64 (LPI.getOperand (1 )), " TODO: NOT IMPLEMENTED YET!" );
2131+ if (Emu->isInt64 (LPI.getOperand (1 )))
2132+ llvm_unreachable (" TODO: NOT IMPLEMENTED YET!" );
21232133 return false ;
21242134}
0 commit comments