Hi, Ian,
Sorry for this delayed reply, just because bug chasing is time-cosumping to
a beginner. I think I found the root cause of the problem and post my ideas
to it for your reference.
As mentioned before in this thread, A new floating point type of 32 bit was
introduced into GCC, and this
Sorry for delayed reply.
As I said, I haven't looked at the code in awhile (before GIMPLE), but
the TREE code is the symbol table that allows you to look up the types
of arguments and the function return type.
Yes, I think you ar right. I found some other functionalities in
rs6000_gimplify_va
ao qi [mailto:[EMAIL PROTECTED]
Sent: Friday, September 09, 2005 6:43 AM
To: Meissner, Michael
Cc: gcc@gcc.gnu.org
Subject: RE: var_args for rs6000 backend
>From: "Meissner, Michael" <[EMAIL PROTECTED]>
>To: "Yao qi" <[EMAIL PROTECTED]>
>CC: gcc@gcc.gnu
> Yao qi writes:
>> Yes. TARGET_HARD_FLOAT is defined as
>>
>> #define TARGET_HARD_FLOAT ((target_flags & MASK_SOFT_FLOAT) == 0)
>>
>> The -mhard-float option will clear the MASK_SOFT_FLOAT bit in
>> target_flags.
Yao> Yes, this option works when I use it in GDB like this,
Yao> (gdb) run -
Yes. TARGET_HARD_FLOAT is defined as
#define TARGET_HARD_FLOAT ((target_flags & MASK_SOFT_FLOAT) == 0)
The -mhard-float option will clear the MASK_SOFT_FLOAT bit in
target_flags.
Yes, this option works when I use it in GDB like this,
(gdb) run -mhard-float
../../gcc-dfp-cvs-Aung-10/gcc/t
From: "Meissner, Michael" <[EMAIL PROTECTED]>
To: "Yao qi" <[EMAIL PROTECTED]>
CC: gcc@gcc.gnu.org
Subject: RE: var_args for rs6000 backend
Date: Thu, 8 Sep 2005 21:19:25 -0400
Yes, the eABI is a modification of the System V ABI. IIRC (but it has
been several
"Yao qi" <[EMAIL PROTECTED]> writes:
> Do you mean the value of TARGET_HARD_FLOAT is *1* when option -mhard-float
> is specified according to rs6000.opt ?
Yes. TARGET_HARD_FLOAT is defined as
#define TARGET_HARD_FLOAT ((target_flags & MASK_SOFT_FLOAT) == 0)
The -mhard-float option will clear t
From: Andrew Pinski <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED] (Yao qi)
CC: ian@airs.com, gcc@gcc.gnu.org
Subject: Re: var_args for rs6000 backend
Date: Fri, 9 Sep 2005 01:51:58 -0400 (EDT)
> BTW, I am concerned about the value of TARGET_HARD_FLOAT and
TARGET_FPRS,
> I think both
"Yao qi" <[EMAIL PROTECTED]> writes:
>5672 tree
>5673 rs6000_gimplify_va_arg (tree valist, tree type, tree *pre_p,
> tree *post_p)
>5674 {
> ...
>5733 if (dump_file)
>5734 {
>5735 fprintf (dump_file, "TARGET_HARD_FLOAT =
> %d\n",TARGET_HARD_FLOAT);
>
I don't know where the DFP arguments are passed. If they are passed
in the floating point registers, then is the fix as simple as handling
the new modes like SFmode and DFmode in rs6000_gimplify_va_arg?
Yes, new modes has been added correspondingly.
>
> However, I am not sure about the follo
> BTW, I am concerned about the value of TARGET_HARD_FLOAT and TARGET_FPRS,
> I think both of them is 1 here, because I built GCC natively on POWER, but
> when I trace
> it , I found it skips this condation statement as if ARGET_HARD_FLOAT is 0,
> I do not know
> why.
>
> I have searched TARGET
I often find it necessary to add debugging prints to these functions
to show where parameters are found in registers and/or on the stack,
and what kind of thing va_arg returns. These prints most conveniently
take the form of
if (dump_file)
fprintf (dump_file, ...);
to appe
"Yao qi" <[EMAIL PROTECTED]> writes:
> I am working on GCC dfp branch for *only* one month. Three new data types
> are added into GCC for the consideration of precision. These three new
> data types works well in argument passing and value return, but can not
> deal with variable argument passin
From: Ian Lance Taylor
To: "Yao Qi qi" <[EMAIL PROTECTED]>
CC: gcc@gcc.gnu.org
Subject: Re: var_args for rs6000 backend
Date: 07 Sep 2005 09:14:49 -0700
"Yao Qi qi" <[EMAIL PROTECTED]> writes:
It might help if you give a brief overview of what you are tryi
changes that I'm forgetting about, and also
the 64-bit support probably changes things also.
-Original Message-
From: Yao qi [mailto:[EMAIL PROTECTED]
Sent: Thursday, September 08, 2005 9:10 PM
To: Meissner, Michael
Cc: gcc@gcc.gnu.org
Subject: RE: var_args for rs6000 backend
From: "Meissner, Michael" <[EMAIL PROTECTED]>
To: "Yao Qi qi" <[EMAIL PROTECTED]>
CC: gcc@gcc.gnu.org
Subject: RE: var_args for rs6000 backend
Date: Wed, 7 Sep 2005 13:11:50 -0400
There was also a PowerPC NT ABI at one point, but since Windows NT on
PowerPC wa
riginal Message-
From: Yao Qi qi [mailto:[EMAIL PROTECTED]
Sent: Tuesday, September 06, 2005 11:14 PM
To: Meissner, Michael
Cc: gcc@gcc.gnu.org
Subject: RE: var_args for rs6000 backend
>From: "Meissner, Michael" <[EMAIL PROTECTED]>
>To: "Yao qi" <[EMAIL PROTECTED
"Yao Qi qi" <[EMAIL PROTECTED]> writes:
> New data types were added into GCC as well as new modes.
It might help if you give a brief overview of what you are trying to
do (maybe you already have, and I forgot). Also, I assume you are
working with mainline gcc.
> Argument
> passing and
> return
From: Ian Lance Taylor
To: "Yao qi" <[EMAIL PROTECTED]>
CC: gcc@gcc.gnu.org
Subject: Re: var_args for rs6000 backend
Date: 06 Sep 2005 11:05:38 -0700
"Yao qi" <[EMAIL PROTECTED]> writes:
These are partially documented in gcc/doc/tm.texi. Unfortunately the
d
On Wed, Sep 07, 2005 at 11:14:28AM +0800, Yao Qi qi wrote:
> I just have to concentrate on ABI_V4 if I work on gcc develoment on
> powerpc-linux, am I right ?
Yes, and take care not to break code for the other ABIs. :-)
Incidentally, powerpc64-linux is ABI_AIX.
--
Alan Modra
IBM OzLabs - Linux
From: "Meissner, Michael" <[EMAIL PROTECTED]>
To: "Yao qi" <[EMAIL PROTECTED]>
CC: gcc@gcc.gnu.org
Subject: RE: var_args for rs6000 backend
Date: Tue, 6 Sep 2005 14:13:56 -0400
And note Yao qi, that there are different ABIs on the rs6000, each of
which has dif
] On Behalf Of
Ian Lance Taylor
Sent: Tuesday, September 06, 2005 2:06 PM
To: Yao qi
Cc: gcc@gcc.gnu.org
Subject: Re: var_args for rs6000 backend
"Yao qi" <[EMAIL PROTECTED]> writes:
> I am working on variable arguments on rs6000 backend and I have
> browsed gcc/confi
"Yao qi" <[EMAIL PROTECTED]> writes:
> I am working on variable arguments on rs6000 backend and I have
> browsed gcc/config/rs6000/rs6000.c for several times, I found
> there are some functions relavtive to this issue, they are
> setup_incoming_varargs, rs6000_build_builtin_va_list ,rs60
I am working on variable arguments on rs6000 backend and I have browsed
gcc/config/rs6000/rs6000.c for several times, I found there are
some functions relavtive to this issue, they are setup_incoming_varargs,
rs6000_build_builtin_va_list ,rs6000_va_start ,rs6000_gimplify_va_arg .
I
24 matches
Mail list logo