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

    <tr>
        <th>Summary</th>
        <td>
            [X86] Allow instruction definitions to reference individual EFLAGS bits
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            backend:X86
      </td>
    </tr>

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

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

<pre>
    We currently define EFLAGS as a single opaque register (except DF which we've pulled out entirely for CLD/STD/REP). 

Ideally we need to create individual sub-registers within EFLAGS for key flag bits so we can tweak instructions to indicate which specific flags are read/written/cleared/set/undef. But by default we'd keep most instructions just Use/Def the entire EFLAGS reg.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJxUUk1v5CgQ_TX4UoqFcbtjH3zobMer1eawSnY0c8VQtknT4IEinv73I7qTmcmlkBC8V-9Dxmhmh9iz5oE1x0ImWnzon_99MWfvitHrS_8VQaUQ0JG9gMbJOITH4enw9wvICBKicbNF8Kv8nhACziYSBmCixR8KV4LjANti1AIbMnH_hrAma1GDTwToyAS0F5h8gL-ejkwML__n-fz4HxNdCYwfGT_c5j8apbUX2BAcogbyoAJKQjBOmzejk7QQ03j3sUSEzdBi3Me-meSEF5isnGE0FCH6jKakA9pQnsC4SCEpMt7FjJ-BVWa4KYgrKjMZdUWIIEMWLDUTwxYMETomBmVRBsx3EYmJITmNUwkPiWC8GiiTpZsXGk6IK5x9pM_MrykSfInIxHDECWjBd6c-lAScy0L3te7qThbYV_u2rkTbNbxYemxFXe9qpcZKVlPDa85l106TqlQreTcWphdc1LzhddXsuoqXYo8ccbxXrVTdXnK243iWxpbWvp1LH-bCxJiw34tG7AsrR7Tx2hkhRqlO6DSrD9_aPRMi1yj0-d_dmObIdtyaSPE3Ehmy18Ll980RDtb67U_5t5KZXxkEnDCgU59ifvchh1ikYPuFaI2sPjAxMDHMhpY0lsqfmRgy8_txtwb_iirHchUUmRiumn4GAAD__278A40">