[LLVMdev] Hazard recognizers & basic blocks

Damien Vincent damien.llvm at gmail.com
Thu Feb 10 10:37:57 PST 2011


To be more specific, let's consider the following (imcomplete) C code (OK,
this is not good C style ;) )

{
  ...
  goto label0;
   ...
  goto label1;
  ...

  label0:
  {
  // some C code for basic block starting at label0
   ...
  }
  label1:
  {
  // some C code for basic block starting at label1
  ...
  }
}


In the previous example, the last instruction of basic block0 (starting at
label0) is not a jump. There might be a structural hazard between this
instruction and the first instruction of basic block1 (starting at label1).

Did you have to deal with this kind of hazards ?

Thanks.


On Thu, Feb 10, 2011 at 10:30 AM, Damien Vincent <damien.llvm at gmail.com>wrote:

>
>   I am working on a target which has some structural hazards.
> To detect these hazards, I implemented a sub-class of
> PostRAHazardRecognizer.
>
>   PostRAHazardRecognizer resets the hazard state on a basic block basis.
>   So, how to detect hazards that may occur between the end of a basic block
> and the beginning of another basic block ?
>
>   Thanks !
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20110210/aa571745/attachment.html>


More information about the llvm-dev mailing list