<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/120152>120152</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[DirectX] Update DXContainerGlobals to get the shader flags from metadata rather than analysis
</td>
</tr>
<tr>
<th>Labels</th>
<td>
backend:DirectX
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
bogner
</td>
</tr>
</table>
<pre>
DXContainerGlobals currently grabs shader flags from the analysis. This seems reasonable at a high level, but there are a couple of caveats:
1. We'd like to disallow running shader flags analysis after op lowering (See #120119), which means this would need to rely on the flags analysis being preserved since then
2. The flags are already embedded in DXIL metadata at this point, so we should just be able to copy them from there.
We should update the pass to simply pull the flags in an opaque way from metadata and put them into the appropriate container part.
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJxsk0GP4zYMhX-NfCHWiOVkEh98SDdIUaC3tti5UhJta0eWVFFO4H9fyJnJtMUcDF_0yI-Pj8hsR0_Ui8Mv4nCpcMlTSL0Ko6dUqWDW_vL6PfiM1lP61QWFjkEvKZHPboUxoWLgCQ0lGByODEMKM-SJAD26lS3X8OdkGZhoZkiEHDwqR4AZECY7TuDoRk7I76CWXKSJAMsHOizREYQBNN4IM4v2LHbnpoYfJOTRgLNvBDmAsYzOhTukxXvrx_8ifZAADpkShAgu3CmVd0Ke_iACIdtG7pqmE7IrIPfJ6glmQs-QC_09LM6AJzKlXSK3QvDbmP9roaiUjYmY0o0MsPWaykMvdmdZvHhKyoguEZoVaFZkDBmwHi6vv_0OM2U0mLG4tAHEYH0uaBzgTsDTBvRz4QyKYDM0B9AhrqXZ_FxDolrsimk_nqIlGswbE0RkLjq2c3QrxMW5fw1lPaCHEPHvheCO66PoJ5o3EB8bm8H6HB5rjzGFmGxpoT-SAxFTrivTt6ZrO6yob47tvj0du-OxmvrmtO-UHgajaSBJRLIj2bW6w8NBDS9U2V7u5L6RzYuU8qU51nvVtYM-tWj25iSlFvsdzWhd7dxtrkMaK8u8UF-2epCVQ0WOt5RLqVC_kTeiPV9sIp1fhZQl_Kkv4m9qGVnsd85y5s9y2Wa3ncmH5nCBvx5GfnEhOcBImzNfHMfTwIRlQZAn9M8AVUty_ZRz3LIur0JeR5unRdU6zEJeC9D771tM4SfpLOR1G5aFvL7Pe-vlPwEAAP__SblT4Q">