<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <meta http-equiv="content-type" content="text/html; charset=utf-8">
    <div class="post-text" itemprop="text" style="margin: 0px 0px 5px;
      padding: 0px; border: 0px; font-size: 15px; width: 660px;
      word-wrap: break-word; line-height: 1.3; color: rgb(34, 34, 34);
      font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
      font-style: normal; font-variant: normal; font-weight: normal;
      letter-spacing: normal; orphans: auto; text-align: left;
      text-indent: 0px; text-transform: none; white-space: normal;
      widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;
      background-color: rgb(255, 255, 255);">
      <p style="margin: 0px 0px 1em; padding: 0px; border: 0px;
        font-size: 15px; clear: both;">Is there any pass that breaks an
        expression out of an instruction's operand into its own
        instruction, so that such nested instructions become explicit
        and are thus easier to work with in?</p>
      <p style="margin: 0px 0px 1em; padding: 0px; border: 0px;
        font-size: 15px; clear: both;">e.g Following<span
          class="Apple-converted-space"> </span><code style="margin:
          0px; padding: 1px 5px; border: 0px; font-size: 13px;
          font-family: Consolas, Menlo, Monaco, 'Lucida Console',
          'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans
          Mono', 'Courier New', monospace, sans-serif; white-space:
          pre-wrap; background-color: rgb(238, 238, 238);">call</code><span
          class="Apple-converted-space"> </span>instruction contains a<span
          class="Apple-converted-space"> </span><code style="margin:
          0px; padding: 1px 5px; border: 0px; font-size: 13px;
          font-family: Consolas, Menlo, Monaco, 'Lucida Console',
          'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans
          Mono', 'Courier New', monospace, sans-serif; white-space:
          pre-wrap; background-color: rgb(238, 238, 238);">GEP</code><span
          class="Apple-converted-space"> </span>instruction as its first
        operand. Is there any pass which allows me to break up this:</p>
      <pre style="margin: 0px 0px 1em; padding: 5px; border: 0px; font-size: 13px; overflow: auto; width: auto; max-height: 600px; font-family: Consolas, Menlo, Monaco, 'Lucida Console', 'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Courier New', monospace, sans-serif; word-wrap: normal; background-color: rgb(238, 238, 238);"><code style="margin: 0px; padding: 0px; border: 0px; font-size: 13px; font-family: Consolas, Menlo, Monaco, 'Lucida Console', 'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Courier New', monospace, sans-serif; white-space: inherit; background-color: rgb(238, 238, 238);">  %call = call i32 (i8*, ...)* @printf(i8* getelementptr inbounds ([4 x i8]* @.str4, i32 0, i32 0), i32 %tmp6)
</code></pre>
      <p style="margin: 0px 0px 1em; padding: 0px; border: 0px;
        font-size: 15px; clear: both;">into these:</p>
      <pre style="margin: 0px 0px 1em; padding: 5px; border: 0px; font-size: 13px; overflow: auto; width: auto; max-height: 600px; font-family: Consolas, Menlo, Monaco, 'Lucida Console', 'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Courier New', monospace, sans-serif; word-wrap: normal; background-color: rgb(238, 238, 238);"><code style="margin: 0px; padding: 0px; border: 0px; font-size: 13px; font-family: Consolas, Menlo, Monaco, 'Lucida Console', 'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Courier New', monospace, sans-serif; white-space: inherit; background-color: rgb(238, 238, 238);">%tmp = i8* getelementptr inbounds ([4 x i8]* @.str4, i32 0, i32 0)
%call = call i32 (i8*, ...)* @printf(i8* %tmp, i32 %tmp6)
</code></pre>
      <p style="margin: 0px 0px 1em; padding: 0px; border: 0px;
        font-size: 15px; clear: both;">?</p>
    </div>
    Thank you in advance,<br>
    <br>
    --istavrak<br class="Apple-interchange-newline">
  </body>
</html>