[LLVMdev] Question about dag-combine pass

Park Ji-In tisphie at gmail.com
Thu Nov 26 03:54:42 PST 2009


Hello,

I'm trying to write an backend for some VM,
and started from copying Mips backend.

That VM has no i8 register as MIPS.

When I use truncate operation, it's converted to store/load(sext) during
dag-combining,
not legalization. and also, I found that the dag-combining is different for
each architecture.

Q1. where is the correct place in the source code that the truncate
operation is gone during the dag combining pass.
Q2. Why that the dag-combinig is different for each architecture.
Q3. I don't want to use that kind of store/load techiniq to mimic
truncation, but just replace to some instruction such as
'CONVERT_i32_to_i8'. What is good way to do?

Thanks,
Jiin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20091126/cee5f4da/attachment.html>


More information about the llvm-dev mailing list