<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Exchange Server">
<!-- converted from rtf -->
<style><!-- .EmailQuote { margin-left: 1pt; padding-left: 4pt; border-left: #800000 2px solid; } --></style>
</head>
<body>
<font face="Courier New" size="2"><span style="font-size:11pt;">
<div>I’m looking at SelectionDAG’s getNode() members, and I notice some of them take a SDNodeFlags argument and some don’t. </div>
<div> </div>
<div>Some uses of those Flags avoid memoizing new nodes, others don’t. Unless I misunderstand. And some places in the vector legalizer drop it in some cases. I don’t know why. Is there a reason?</div>
<div><font face="Calibri"> </font></div>
<div>I ask because I need a getNode() that takes a list of SDValues, a list of EVT, and a Flags argument. No such function exists. I need to create a node that is chained, and that’s why I think I need the list of EVT. And the list of SDValue operands seems
cleanest in the caller. The Flags argument is the spoiler.</div>
<div><font face="Calibri"> </font></div>
<div>So what’s the story with the Flags argument? Do we have reasons for dropping it when we do? Is it safe to drop? Is it safe to always keep it? If I add a new getNode() do I need to deal with memoizing?</div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri" size="2"><span style="font-size:10pt;">--<font size="2"><span style="font-size:11pt;">
<br>
</span></font><font face="Courier New">Kevin P. Neal<br>
</font><font face="Courier New">SAS/C and SAS/C++ Compiler</font></span></font></div>
<div><font size="2"><span style="font-size:10pt;">Host Research and Development</span></font></div>
<div><font size="2"><span style="font-size:10pt;">SAS Institute, Inc.</span></font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri"> </font></div>
<div><font face="Calibri"> </font></div>
</span></font>
</body>
</html>