<html dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style id="owaParaStyle" type="text/css">P {margin-top:0;margin-bottom:0;}</style>
</head>
<body ocsi="0" fpstyle="1">
<div style="direction: ltr;font-family: Tahoma;color: #000000;font-size: 10pt;">In LegalizeDAG.cpp, truncating stores are custom-lowered in line 1314-1317:<br>
<br>
<pre class="fragment"><span class="keywordflow">1314 case TargetLowering::Custom:<br>1315 ReplaceNode(SDValue(Node, 0),<br>1316 TLI.LowerOperation(SDValue(Node, 0), DAG));<br>1317 break;</span><br><br></pre>
Is there a reason it doesn't check whether the SDValue returned from <br>
TargetLowering::LowerOperation is null before it replaces the original node with the returned node? The return value is checked everywhere else TLI.LowerOperation is called (line 937, for example).
<br>
<pre class="fragment"><span class="keywordflow"></span></pre>
<pre class="fragment"><br>937 Tmp1 = TLI.LowerOperation(Tmp3, DAG);<br>938 if (Tmp1.getNode()) {<br>939 Tmp3 = Tmp1;<br>940 Tmp4 = Tmp1.getValue(1);<br>941 }<br>942 break;</pre>
<br>
</div>
</body>
</html>