[LLVMdev] Re: llvm linux/PPC cfrontend
John Criswell
criswell at cs.uiuc.edu
Tue Jun 28 08:22:49 PDT 2005
Cyrille Mescam wrote:
> Morning,
>
> I would like to know if you received my mail with the assembly code
> you wanted.
>
> It not, i'll send it again to you.
>
> Thanks for your help.
>
> Regards.
>
> Cyrille
>
I've looked into the files you sent me, and it seems that the problem is
occuring due to the C library simplication pass (which is run by gccas).
What appears to be happening is that a call to fprintf() is being
changed to a call to fwrite(), but this transform is being done
incorrectly because the fprintf() is being passed a ubyte * while
fwrite() takes an sbyte *.
I'm creating a reduced testcase right now, but in the meantime, I'd like
for you to try something. This should work around the problem that
you're having (as well as verify that I understand the problem):
Go into your LLVM source tree and comment out the following line in
llvm/tools/gccas/gccas.cpp:
addPass(PM, createSimplifyLibCallsPass()); // Library Call Optimizations
Rebuild gccas. Then, try to build the LLVM GCC frontend again. Please
email the llvmdev list and let us know if it works.
In the meantime, I will continue to try to get a reduced test case and
either fix the bug or hand it off to Reid (the author of the C library
simplification pass).
-- John T.
--
John T. Criswell
Research Programmer
University of Illinois at Urbana-Champaign
"It's today!" said Piglet. "My favorite day," said Pooh.
More information about the llvm-dev
mailing list