[llvm-dev] VLIW support
Krzysztof Parzyszek via llvm-dev
llvm-dev at lists.llvm.org
Tue Sep 29 14:13:18 PDT 2015
On 9/25/2015 6:41 PM, Rail Shafigulin via llvm-dev wrote:
> Kun,
>
> Thanks for the reply. I looked at it, but wasn't able to find where
> actual instruction bundling takes place, i.e. where exactly in the code
> they pack instruction into a single bundle. Do you know where it is
> done? I would really appreciate any pointers.
>
The main apparatus that does that is in DFAPacketizer.cpp. It keeps
track of the available resources for the currently built bundle. The
HexagonVLIWPacketizer.cpp does a lot, but it's mostly concerned with
what instructions can or cannot go together. In essence, it tries to
add the next instruction to the bundle currently under construction. If
that succeeds, it goes for the next instruction, if it fails, it
finalizes the bundle and puts the instruction in a fresh bundle. It
repeats this process for each basic block in the function.
-Krzysztof
--
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
hosted by The Linux Foundation
More information about the llvm-dev
mailing list