[LLVMdev] Comments on the bundle proposal
Andrew Trick
atrick at apple.com
Thu Dec 8 10:35:59 PST 2011
On Dec 8, 2011, at 8:36 AM, Krzysztof Parzyszek wrote:
> On Wed, Dec 07, 2011 at 10:14:22AM -0800, Andrew Trick wrote:
>>
>> On Dec 6, 2011, at 3:10 PM, Krzysztof Parzyszek wrote:
>>
>>> - How about having bundles that contain branch targets (other than the
>>> first instruction) from the outside of the bundle? This seems like something
>>> that has a potential for causing trouble, but I can't think of any specific
>>> scenario at the moment.
>>
>> I think bundles could cross branches with some care. But I don't think they will ever be able to cross CFG merge points, if that's what you're asking.
>
>
> Actually, what I was getting at was a clarification on whether the bundle
> may or may not cross a basic block boundary. While having a bundle that
> contains a branch and a target of the branch may seem desirable, a bundle
> that has a branch target (from outside) somewhere in the middle of it
> seems to be a dangerous thing. Evan's proposal didn't state any requirements
> or limitations regarding that. If there were no such limitations in place,
> any generic code that is "bundle-aware" would need to take it into
> consideration, possibly at the expense of complexity.
>
> -Krzysztof
This sort of thing will be codified in a bundle verifier. It will check that MIs marked "within a bundle" are sequential and start with a bundle header instruction, all within the same block. A block may contain multiple branches, so "multi-way branch" bundles could be supported.
-Andy
More information about the llvm-dev
mailing list