[PATCH] D22249: Get rid of bool parameters in SelectionDAG::getLoad, getStore, and friends.

Chandler Carruth via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 11 18:32:50 PDT 2016


chandlerc added a comment.

OK, i've looked at all the diffs now.

They all look freaking amazing. Waiting to see the results of enum-ing it, and one nit on one of the targets below.


================
Comment at: lib/Target/X86/X86ISelLowering.cpp:5614-5616
@@ -5613,5 +5604,1 @@
   auto CreateLoad = [&DAG, &DL](EVT VT, LoadSDNode *LDBase) {
-    SDValue NewLd = DAG.getLoad(
-        VT, DL, LDBase->getChain(), LDBase->getBasePtr(),
-        LDBase->getPointerInfo(), false /*LDBase->isVolatile()*/,
-        LDBase->isNonTemporal(), LDBase->isInvariant(), LDBase->getAlignment());
----------------
Wait, why on earth do we just ignore the original load's volatility??!?!?!?!!!!????

Ok, this was added in r265013 which was D18546. This filtered volatile loads from getting into this code in the first place.

Can you change this to instead of clearing the volatile bit to assert that the volatile bit is not set coming into this routine?


http://reviews.llvm.org/D22249





More information about the llvm-commits mailing list