> AIX snuck in increased stack alignment in 32-bit mode along the
> way. STACK_BOUNDARY should be increased to 128 for AIX. Transitioning
> could be tricky.
Thanks, we'll try and see what we can do.
--
Eric Botcazou
AIX snuck in increased stack alignment in 32-bit mode along the
way. STACK_BOUNDARY should be increased to 128 for AIX. Transitioning
could be tricky.
David
> Couldn't (and shouldn't) the start sequence in crt0 align the stack?
> It seems someone somewhere has to do that eventually anyway. I would
> not assume the OS is going to cooperate.
Yes, but that's not sufficient. The compiler must align local objects too.
--
Eric Botcazou
On Jan 14, 2006, at 10:19 AM, Robert Dewar wrote:
Perry Smith wrote:
The conflict is actually 32bit, AIX, Altivec, and Ada
(together). So, how about for now, just say that Ada can't
support Altivec on 32bit AIX.
My point is that I'd like to keep Altivec support on 32bit AIX
for othe
Andrew Pinski wrote:
Huh? Where is this requirement documented because I don't see it at all
in tm.texi? Also what is Ada using BIGGEST_ALIGNMENT for, that just seems
wrong.
Ada uses BIGGEST_ALIGNMENT as the largest value that can be specified
for alignment
of a type (which seems a reaso
> Huh? Where is this requirement documented because I don't see it at all
> in tm.texi?
It's a logical consequence of the code in assign_stack_local_1.
> Also what is Ada using BIGGEST_ALIGNMENT for, that just seems
> wrong.
Well, the manual reads:
-- Macro: BIGGEST_ALIGNMENT
Biggest al
>
> > Why isn't this bug an incorrect use of BIGGEST_ALIGNMENT somewhere
> > in the compiler?
>
> Because you must have BIGGEST_ALIGNMENT <= STACK_BOUNDARY (or
> PREFERRED_STACK_BOUNDARY) in order to be able to allocate objects with
> BIGGEST_ALIGNMENT on the stack. Otherwise the offsets a
> The conflict is actually 32bit, AIX, Altivec, and Ada (together).
Not quite.
> My point is that I'd like to keep Altivec support on 32bit AIX for
> other languages.
Well, GCC has *no* Altivec support on AIX.
--
Eric Botcazou
> Why isn't this bug an incorrect use of BIGGEST_ALIGNMENT somewhere
> in the compiler?
Because you must have BIGGEST_ALIGNMENT <= STACK_BOUNDARY (or
PREFERRED_STACK_BOUNDARY) in order to be able to allocate objects with
BIGGEST_ALIGNMENT on the stack. Otherwise the offsets are not suffic
Perry Smith wrote:
The conflict is actually 32bit, AIX, Altivec, and Ada (together).
So, how about for now, just say that Ada can't support Altivec on
32bit AIX.
My point is that I'd like to keep Altivec support on 32bit AIX for
other languages.
I am confused, how can Altivec be prope
The conflict is actually 32bit, AIX, Altivec, and Ada (together).
So, how about for now, just say that Ada can't support Altivec on
32bit AIX.
My point is that I'd like to keep Altivec support on 32bit AIX for
other languages.
On Jan 14, 2006, at 9:03 AM, Eric Botcazou wrote:
A
Why isn't this bug an incorrect use of BIGGEST_ALIGNMENT somewhere
in the compiler?
David
> And how does that solve the problem when Altivec is "supported"?
Let's first fix existing problems. :-) But a partial solution could be to
make BIGGEST_ALIGNMENT depend on TARGET_ALTIVEC_ABI and later set
TARGET_ALTIVEC_ABI unconditionally to 1 when Altivec support is added:
#define BI
> Eric Botcazou writes:
Eric> So why not revert to the original BIGGEST_ALIGNMENT setting until Altivec
is
Eric> supported? That would be more in keeping with all the other settings on
AIX.
And how does that solve the problem when Altivec is "supported"?
This just covers up proble
> AIX does support Altivec.
Great, but not GCC as far as I can see:
[EMAIL PROTECTED]:~/build/gcc/powerpc-ibm-aix5.3> gcc/xgcc -Bgcc -E -dM t.h
-maltivec
| grep __ALTIVEC__
[EMAIL PROTECTED]:~/build/gcc/powerpc-ibm-aix5.3>
So why not revert to the original BIGGEST_ALIGNMENT setting until
> Eric Botcazou writes:
Eric> That's problematic (in particular for Ada) because nothing is 128-bit
aligned
Eric> on AIX 32-bit.
AIX does support Altivec.
David
Hi,
Its current setting is 128. It originally had been 64 and was bumped to 128
in 2001 when Altivec support was added; yet:
aix.h:
/* AIX does not support Altivec. */
#undef TARGET_ALTIVEC
#define TARGET_ALTIVEC 0
#undef TARGET_ALTIVEC_ABI
#define TARGET_ALTIVEC_ABI 0
That's problematic (i
17 matches
Mail list logo