------- Comment #2 from amylaar at gcc dot gnu dot org  2010-06-22 22:43 -------
(In reply to comment #1)
> Well this is caused by bool being a define in C to being unsigned char and the
> spu.c file using unsigned char.  A simple fix is an obvious fix.

I still have to verify that that is the only thing that needs changing beyond
the 44512 issue in order to get the port to build with c++.

In fact, I'm pretty sure that it won't be enough.  This is from the
ChangeLog.cxx in the multi-target-20100613-branch:

2010-02-18  Joern Rennecke  <joern.renne...@embecosm.com>

        * config/spu/spu.c (ea_load_store_inline): Use add_reg_note.

2009-05-20  J"orn Rennecke  <joern.renne...@arc.com>

        * config/rs6000/rs6000.c (legitimate_indirect_address_p):
        Don't define inline.

        * config/spu/spu-protos.h (struct cpp_reader): Forward declaration.
        (spu_expand_epilogue) Use bool.
        * config/spu/spu.c (spu_scalar_mode_supported_p): Declare with bool.
        (spu_vector_mode_supported_p, spu_handle_fndecl_attribute): Likewise.
        (spu_handle_vector_attribute, spu_pass_by_reference): Likewise.
        (spu_rtx_costs, spu_function_ok_for_sibcall): Likewise.

If the patch is obvious, that means it doesn't need through the full review
process, but it still needs to be tested.

And why did you remove the dependency on 44512?
The port still won't build with c++ unless this issue is addressed.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44640

Reply via email to