Fixed -Os build with GCC 4.9 - #1
Conversation
|
Thanks! The vu32 type fix is consistent with the vu32 cast, so that's fine. Not sure why this has to be volatile though. The function change shouldn't change anything, other than maybe adding a function call instead of inlining. I wonder if these changes "fix" the runtime issues you were seeing simply because they change the code size and the location of some variables gets shifted. I understood from the GCC discussion that it might be an alignment issue. However, it seems like you already tried -mno-unaligned-access and it didn't help. In any case I would like to understand the fix before I commit it. Eventually we should try to get the correct fix (and my branch) merged into the leaflabs repo. |
|
I think the "function change" incorporates a type cast as the function, unlike the define, has a variable type declaration. In my opinion all those "_WHATEVER" should be replaced where possible, as it seems to me like those are meant to be "library internal". I just decided to only change the ones that cause problems and keep the other. |
|
And: Yes, the changes should be upstreamed, but you already tried this, as far as I can see, and it seems like Maple is somehow "dead"/unmaintained...? |
I've tracked down the reason for not compiling with "-Os" on GCC 4.9. Can you please review my changes and pull them into your repository?