[LLVMdev] Thoughts about the llvm architecture
Jochen Wilhelmy
j.wilhelmy at arcor.de
Thu Jul 29 05:24:42 PDT 2010
Hi!
The following thoughts about the llvm architecture I'd like to share
with you
(from the perspective of a user):
- If a backend has no vector support, then I wonder why there is no
de-vectorization
pass that operates on indermediate llvm-ir. I would think that if you
use such a target
then you have to insert a target independent pass before it that it does
not have to
care about vector code. The advantage is that constant vector components
can already
be handled by instcombine. what do you think?
- If the integer width of a backend is smaller than the integers in the
llvm-ir (e.g.
an 8 bit microcontroller) then i also would expect a target independent
integer
splitting. the difficulty here is how to handle carry in the ir. but the
advantage would
be that if i have e.g. int32_t a = 5 then three of the four bytes are
zero and can
be optimized by instcombine. I have seen very bad code in the output of
avr-gcc in this case.
-Jochen
More information about the llvm-dev
mailing list