Port-vax archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: VAX floating point formats & tuning GCC for CPU models (was Re: Some more patches for GCC...)



On Apr 4, 2016, at 09:34, John Klos <john%ziaspace.com@localhost> wrote:
> 
>> All, all well and good. But before twiddling with floating point formats, and other tuning, how about making gcc actually work? At the moment, it crashes with internal error pretty early when trying to build NetBSD.
> 
> "Pretty early" implies that it's not "immediately". For me, it's immediately with gcc 5.3. I think with 4.8 I could compile the simplest sample programs.
> 
> John

I believe that most of those GCC crashes (if they're illegal instruction crashes that show up as stack overflows in GDB) are due to branching errors related to the bad optimization that I've mostly fixed in a previous patch. I'm working on cleaning that up further, because the version I have is less aggressive about removing redundant "tst" / "cmp" instructions than the current version (but also doesn't remove the necessary ones). I'm hoping to have something that both fixes the code gen bugs and doesn't sacrifice performance by this weekend.

I am planning to return to my attempts to fix the non-floating point code generation in GCC, but I was getting a little burned out on the super-confusing template expansion business and switching gears to floating-point stuff also helped me understand the data formats better. I know that vax.md is missing some important definitions that are causing many files to fail to compile with "-O" or higher with a "missing insn" error, but I don't quite understand how the whole "subreg" thing works, or what exactly a 32-bit system needs to provide to GCC to have full support for "long long" format. I'm hoping to add definitions for about 10 or so items that GCC would prefer to generate as inline assembly language but doesn't yet know how to for VAX (even though it'd be only one or two instructions for them). string & mem copy, but also simple FP test stuff could be builtins.

I'll write more in a few days, when I have something to share.

Regards,
Jake


Home | Main Index | Thread Index | Old Index