<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/124310>124310</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [DirectX][Doc] Document various module metadata and function attributes
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          bharadwajy
      </td>
    </tr>
</table>

<pre>
    Modules generated by `clang` during compilation of HLSL use the following module metadata to denote module-wide properties and function attributes to denote function-wide properties in LLVM IR.

1. Module Metadata
  - `dx.valver`
  - `dx.shaderModel`
  - `dx.disable_optimizations`
2. Function Attributes
  - `hlsl.shader`
  - `hlsl.shaderModel`

Only `hlsl.shader` is [documented](https://clang.llvm.org/docs/HLSL/HLSLIRReference.html). Update documentation to include all module metadata and function attributes.
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJyMU92K2zwQfRr5ZoiRZcuJL3yRJZhvIeGDLS29K7I1sbXIktFP0vTpi73ev4ZCrwQ6OmfmzBkJ71VvEGvCHwg_JCKGwbq6HYQT8iqeb0lr5a0-WRk1eujRoBMBJbQ3ICXttDA9KSnI6JTpobPjpLQIyhqwZ_jv-OUI0SOEAeFstbbX-dW4qMGIQUgRBAQLEo0NuCKbq5IIk7MTuqDQgzASztF0i64Iwak2BvQfiK_oHVUZOB6_neDxKSV0T-g-S-HFDZzW-oTuATazHfkzvQh9QUdK-unWD0KiO1mJ-k9IKi9ajT_sFNSofi3e_csjlkLz2vX-ret39qC9XqU_qX64_1CS0P3_Rt_uiaA8EP4gbRdHNAEl4QfCdkMIkyf5nrCGsGZJKtX6MqbW9YQ10naesGaOaD0en57wjA5Nh-kQRk1YlcLXSYqA8Cr-Em2woEyno0QQWt_l-Ze40kTWuazySiRYZ9t8u823Ja-Soa4oIkfkbYcl7uSWS7o77845K6uiqrIqUTWjjNOMFVnJi6xKq4JXHcuytihFy3cFKSiOQuk3h4nyPmKdsSLPaKJFi9ovS86YwSssKGFs3nlXz6RNG3tPCqqVD_5dJqigl99xUA678H2eLX842I7wAxzWqcBFOGWj_9dJJNHp-nM-vQpDbNPOjoQ1c_X12EzOPmMXCGuWnufMVlOXmv0OAAD__wyfPVs">