public inbox for gcc-help@gcc.gnu.org
 help / color / mirror / Atom feed
* [Consult] tile: How to construct testsuite for tile architecture without hardware.
@ 2015-01-17  9:45 Chen Gang S
  2015-01-17 17:04 ` Mike Stump
  2015-01-19 16:10 ` Chris Metcalf
  0 siblings, 2 replies; 33+ messages in thread
From: Chen Gang S @ 2015-01-17  9:45 UTC (permalink / raw)
  To: walt, Chris Metcalf; +Cc: Jeff Law, gcc-help, Mike Stump

Hello Maintainers:

I am trying to make gcc patches for tile, and need testsuite without
related hardware, so I consult:

 - Can we construct testsuite for tile without related hardware?

 - If yes, we can, please provide more information about it(e.g exp file
   for DejaGNU).

 - Are there any open source free simulators for tile? (if no, I guess,
   I have to try to add tile as a new architecture for qemu, although it
   is not easy for me).

At present:

 - I finished cross compiling tile binutils, gcc, Linux kernel, glibc,
   busybox, zlib, and dropbear (for ssh).

 - During cross compiling, I find some warnings for tile gcc, I want to
   send patches to fix these warnings.

Originally, Linux kernel related members suggest me to add tile to qemu,
it is not easy to me. But at present, if there is the only way for it, I
should try my best to continue.


Welcome any suggestions, ideas, and completions for it, by any members. 

Thanks.
-- 
Chen Gang

Open, share, and attitude like air, water, and life which God blessed

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2015-01-17  9:45 [Consult] tile: How to construct testsuite for tile architecture without hardware Chen Gang S
@ 2015-01-17 17:04 ` Mike Stump
  2015-01-17 23:32   ` Chen Gang S
  2015-01-19 16:10 ` Chris Metcalf
  1 sibling, 1 reply; 33+ messages in thread
From: Mike Stump @ 2015-01-17 17:04 UTC (permalink / raw)
  To: Chen Gang S; +Cc: walt, Chris Metcalf, Jeff Law, gcc-help, Mike Stump

On Jan 17, 2015, at 1:52 AM, Chen Gang S <gang.chen@sunrus.com.cn> wrote:
> I am trying to make gcc patches for tile, and need testsuite without
> related hardware, so I consult:
> 
> - Can we construct testsuite for tile without related hardware?

Yes.

> - If yes, we can, please provide more information about it(e.g exp file
>   for DejaGNU).

Just run make check after wiring up a simulation target where the simulator calls true.  Not perfect, but better than not.

> - Are there any open source free simulators for tile? (if no, I guess,
>   I have to try to add tile as a new architecture for qemu, although it
>   is not easy for me).

Google is your friend.  Try a tile list, if you want to ask people.

> Originally, Linux kernel related members suggest me to add tile to qemu,
> it is not easy to me. But at present, if there is the only way for it, I
> should try my best to continue.

Either fix the existing failures found by the the test suite, there usually are some, or port a simulator or work on any tile reported bugs in bugzilla.

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2015-01-17 17:04 ` Mike Stump
@ 2015-01-17 23:32   ` Chen Gang S
  0 siblings, 0 replies; 33+ messages in thread
From: Chen Gang S @ 2015-01-17 23:32 UTC (permalink / raw)
  To: Mike Stump; +Cc: walt, Chris Metcalf, Jeff Law, gcc-help

On 1/18/15 01:14, Mike Stump wrote:
> On Jan 17, 2015, at 1:52 AM, Chen Gang S <gang.chen@sunrus.com.cn> wrote:
>> I am trying to make gcc patches for tile, and need testsuite without
>> related hardware, so I consult:
>>
>> - Can we construct testsuite for tile without related hardware?
> 
> Yes.
> 
>> - If yes, we can, please provide more information about it(e.g exp file
>>   for DejaGNU).
> 
> Just run make check after wiring up a simulation target where the simulator calls true.  Not perfect, but better than not.
> 

OK, thanks. I shall try "make check" firstly, hope I can finish within
this month (2015-01-31).

And still welcome the tile related exp demo files (that will give much
help to me).

>> - Are there any open source free simulators for tile? (if no, I guess,
>>   I have to try to add tile as a new architecture for qemu, although it
>>   is not easy for me).
> 
> Google is your friend.  Try a tile list, if you want to ask people.
> 

I included tile related members in this thread, I guess, their ideas,
and suggestions will also be much valuable to me.

Google is really necessary, but I am unlucky: in China, I have to use
baidu instead of (can not use google in normal way), baidu can give a
little help (more or less).

During these days (From 2014-12-26 to now), gmail is broken in China, I
can only use gmail web site via Mac book Safari, which can not send pure
text mail (so at present, I have to use another mail address instead of).


>> Originally, Linux kernel related members suggest me to add tile to qemu,
>> it is not easy to me. But at present, if there is the only way for it, I
>> should try my best to continue.
> 
> Either fix the existing failures found by the the test suite, there usually are some, or port a simulator or work on any tile reported bugs in bugzilla.
> 

OK, thank. That sounds a good idea for me, when I try to find and send
tile related patches. I will try with your suggestions, next.

I should try "make check" and send tile related patches firstly, after
finish it (hope I can finish within this month), I should continue to
try the simulator (may be qemu).


Thanks.
-- 
Chen Gang

Open, share, and attitude like air, water, and life which God blessed

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2015-01-17  9:45 [Consult] tile: How to construct testsuite for tile architecture without hardware Chen Gang S
  2015-01-17 17:04 ` Mike Stump
@ 2015-01-19 16:10 ` Chris Metcalf
  2015-01-20  1:54   ` Chen Gang S
  1 sibling, 1 reply; 33+ messages in thread
From: Chris Metcalf @ 2015-01-19 16:10 UTC (permalink / raw)
  To: Chen Gang S, walt; +Cc: Jeff Law, gcc-help, Mike Stump

On 1/17/2015 4:52 AM, Chen Gang S wrote:
> Hello Maintainers:
>
> I am trying to make gcc patches for tile, and need testsuite without
> related hardware, so I consult:

Unfortunately, at the current time, the simulator is only available as part of the commercial Multicore Development Environment package.  A qemu port for tile hardware would certainly be welcome, but to my knowledge, no one has completed such a port yet.  ISA and ABI documentation for tilegx are available at www.tilera.com/scm.

-- 
Chris Metcalf, EZChip Semiconductor
http://www.ezchip.com

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2015-01-19 16:10 ` Chris Metcalf
@ 2015-01-20  1:54   ` Chen Gang S
  2015-01-24 13:24     ` Chen Gang S
  0 siblings, 1 reply; 33+ messages in thread
From: Chen Gang S @ 2015-01-20  1:54 UTC (permalink / raw)
  To: Chris Metcalf, walt; +Cc: Jeff Law, gcc-help, Mike Stump

On 1/20/15 00:10, Chris Metcalf wrote:
> On 1/17/2015 4:52 AM, Chen Gang S wrote:
>> Hello Maintainers:
>>
>> I am trying to make gcc patches for tile, and need testsuite without
>> related hardware, so I consult:
> 
> Unfortunately, at the current time, the simulator is only available as part of the commercial Multicore Development Environment package.  A qemu port for tile hardware would certainly be welcome, but to my knowledge, no one has completed such a port yet.  ISA and ABI documentation for tilegx are available at www.tilera.com/scm.
> 

OK, thank you very much, and the documentation is really valuable to me.

After finish gcc tile testsuite (hope I can finish within this month),
I shall continue for tile qemu, I should try my best for it, hope I can
finish: "can run gcc testsuite with the tile qemu".

At present, it is really very hard to me, but for me, it is my duty (I
met it, and it was within my original boarder).


For me, nothing is impossible, if God blessed.


Thanks.
-- 
Chen Gang

Open, share, and attitude like air, water, and life which God blessed

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2015-01-20  1:54   ` Chen Gang S
@ 2015-01-24 13:24     ` Chen Gang S
  2015-01-30 22:50       ` Chen Gang S
  2015-07-19 22:25       ` Chen Gang
  0 siblings, 2 replies; 33+ messages in thread
From: Chen Gang S @ 2015-01-24 13:24 UTC (permalink / raw)
  To: Chris Metcalf, walt; +Cc: Jeff Law, gcc-help, Mike Stump, Michael Eager

Hello Maintainers:

The result of gcc testsuite for tile without qemu is below, I guess the
environments construction is OK:

                  === gcc Summary ===
  
  # of expected passes            66650
  # of unexpected failures        42
  # of unexpected successes       1
  # of expected failures          107
  # of unresolved testcases       16558
  # of unsupported tests          1771

Based on normal testsuite and microblaze testsuite configuration, it is
easy to config gcc testsuite for tile. Thank gcc testsuit member and
microblaze member very much. :-)

 - Copy the original microblaze exp file as tile exp file. Export tile
   ip to /etc/hosts.

 - Change the related compiler name and related patch to tile in tile
   exp file.

 - Use tile cflag "-m64 -mcpu=tilegx -mcmodel=large -mlittle-endian"
   instead of the original microblaze cflag, in tile exp file.

If OK, I shall try to make a tile patch within this month. Next month,
I shall start tile qemu (I am preparing for it within this month). After
communicate with qemu members, I guess, it is possible to finish it.


Welcome any ideas, suggestions, and completions.

Thanks.

On 1/20/15 10:02, Chen Gang S wrote:
> On 1/20/15 00:10, Chris Metcalf wrote:
>> On 1/17/2015 4:52 AM, Chen Gang S wrote:
>>> Hello Maintainers:
>>>
>>> I am trying to make gcc patches for tile, and need testsuite without
>>> related hardware, so I consult:
>>
>> Unfortunately, at the current time, the simulator is only available as part of the commercial Multicore Development Environment package.  A qemu port for tile hardware would certainly be welcome, but to my knowledge, no one has completed such a port yet.  ISA and ABI documentation for tilegx are available at www.tilera.com/scm.
>>
> 
> OK, thank you very much, and the documentation is really valuable to me.
> 
> After finish gcc tile testsuite (hope I can finish within this month),
> I shall continue for tile qemu, I should try my best for it, hope I can
> finish: "can run gcc testsuite with the tile qemu".
> 
> At present, it is really very hard to me, but for me, it is my duty (I
> met it, and it was within my original boarder).
> 
> 
> For me, nothing is impossible, if God blessed.
> 
> 
> Thanks.
> 

-- 
Chen Gang

Open, share, and attitude like air, water, and life which God blessed

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2015-01-24 13:24     ` Chen Gang S
@ 2015-01-30 22:50       ` Chen Gang S
  2015-01-30 23:01         ` Mike Stump
  2015-07-19 22:25       ` Chen Gang
  1 sibling, 1 reply; 33+ messages in thread
From: Chen Gang S @ 2015-01-30 22:50 UTC (permalink / raw)
  To: Chris Metcalf, walt; +Cc: Jeff Law, gcc-help, Mike Stump, Michael Eager

Hello Maintainers:

After finish analyzing the related warnings for tile, for me, they are
neither tile's issues nor gcc common implementation issues:

  build/genrecog ../../gcc-tile-new/gcc/common.md ../../gcc-tile-new/gcc/config/tilegx/tilegx.md insn-conditions.md > tmp-recog.c
  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:2627: warning: operand 0 missing mode?
  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:2656: warning: operand 0 missing mode?
  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:2890: warning: operand 1 missing mode?
  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:2890: warning: operand 1 missing mode?
  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:2986: warning: operand 3 missing mode?
  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:3030: warning: operand 1 missing mode?
  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:3030: warning: operand 1 missing mode?
  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:3115: warning: operand 1 missing mode?
  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:3115: warning: operand 1 missing mode?
  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:3127: warning: operand 1 missing mode?
  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:3127: warning: operand 1 missing mode?
  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:3140: warning: operand 1 missing mode?
  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:3140: warning: operand 1 missing mode?
  ...

Tile intends to use void mode for pointer operand under tilegx, but
genrecog can not know about tile's willing, so report this warning.

Welcome any ideas, suggestions, and completions.


By the way, when cross compile tile, I found the only warning which can
let me send patch for it yesterday, and send the related patch for it
today (the last day of this month). It is really 'lucky' to me!

Thanks.

On 1/24/15 21:31, Chen Gang S wrote:
> Hello Maintainers:
> 
> The result of gcc testsuite for tile without qemu is below, I guess the
> environments construction is OK:
> 
>                   === gcc Summary ===
>   
>   # of expected passes            66650
>   # of unexpected failures        42
>   # of unexpected successes       1
>   # of expected failures          107
>   # of unresolved testcases       16558
>   # of unsupported tests          1771
> 
> Based on normal testsuite and microblaze testsuite configuration, it is
> easy to config gcc testsuite for tile. Thank gcc testsuit member and
> microblaze member very much. :-)
> 
>  - Copy the original microblaze exp file as tile exp file. Export tile
>    ip to /etc/hosts.
> 
>  - Change the related compiler name and related patch to tile in tile
>    exp file.
> 
>  - Use tile cflag "-m64 -mcpu=tilegx -mcmodel=large -mlittle-endian"
>    instead of the original microblaze cflag, in tile exp file.
> 
> If OK, I shall try to make a tile patch within this month. Next month,
> I shall start tile qemu (I am preparing for it within this month). After
> communicate with qemu members, I guess, it is possible to finish it.
> 
> 
> Welcome any ideas, suggestions, and completions.
> 
> Thanks.
> 
> On 1/20/15 10:02, Chen Gang S wrote:
>> On 1/20/15 00:10, Chris Metcalf wrote:
>>> On 1/17/2015 4:52 AM, Chen Gang S wrote:
>>>> Hello Maintainers:
>>>>
>>>> I am trying to make gcc patches for tile, and need testsuite without
>>>> related hardware, so I consult:
>>>
>>> Unfortunately, at the current time, the simulator is only available as part of the commercial Multicore Development Environment package.  A qemu port for tile hardware would certainly be welcome, but to my knowledge, no one has completed such a port yet.  ISA and ABI documentation for tilegx are available at www.tilera.com/scm.
>>>
>>
>> OK, thank you very much, and the documentation is really valuable to me.
>>
>> After finish gcc tile testsuite (hope I can finish within this month),
>> I shall continue for tile qemu, I should try my best for it, hope I can
>> finish: "can run gcc testsuite with the tile qemu".
>>
>> At present, it is really very hard to me, but for me, it is my duty (I
>> met it, and it was within my original boarder).
>>
>>
>> For me, nothing is impossible, if God blessed.
>>
>>
>> Thanks.
>>
> 

-- 
Chen Gang

Open, share, and attitude like air, water, and life which God blessed

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2015-01-30 22:50       ` Chen Gang S
@ 2015-01-30 23:01         ` Mike Stump
  2015-01-31  5:45           ` Chen Gang S
  0 siblings, 1 reply; 33+ messages in thread
From: Mike Stump @ 2015-01-30 23:01 UTC (permalink / raw)
  To: Chen Gang S; +Cc: Chris Metcalf, walt, Jeff Law, gcc-help, Michael Eager

On Jan 30, 2015, at 2:58 PM, Chen Gang S <gang.chen@sunrus.com.cn> wrote:
> After finish analyzing the related warnings for tile, for me, they are
> neither tile's issues nor gcc common implementation issues:

?  They all look like they can be fixed in the port.

Why not use :P?  From i386:

;; This mode iterator allows :P to be used for patterns that operate on                                                   
;; pointer-sized quantities.  Exactly one of the two alternatives will match.                                             
(define_mode_iterator P [(SI "Pmode == SImode") (DI "Pmode == DImode")])

(define_insn "*tls_global_dynamic_64_<mode>"
  [(set (match_operand:P 0 "register_operand" "=a")
        (call:P
         (mem:QI (match_operand 2 "constant_call_address_operand" "Bz"))
         (match_operand 3)))
   (unspec:P [(match_operand 1 "tls_symbolic_operand")]
             UNSPEC_TLS_GD)]
  “TARGET_64BIT"

> ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:2627: warning: operand 0 missing mode?
>  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:2656: warning: operand 0 missing mode?
>  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:2890: warning: operand 1 missing mode?
>  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:2890: warning: operand 1 missing mode?
>  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:2986: warning: operand 3 missing mode?
>  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:3030: warning: operand 1 missing mode?
>  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:3030: warning: operand 1 missing mode?
>  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:3115: warning: operand 1 missing mode?
>  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:3115: warning: operand 1 missing mode?
>  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:3127: warning: operand 1 missing mode?
>  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:3127: warning: operand 1 missing mode?
>  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:3140: warning: operand 1 missing mode?
>  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:3140: warning: operand 1 missing mode?

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2015-01-30 23:01         ` Mike Stump
@ 2015-01-31  5:45           ` Chen Gang S
  2015-01-31 11:17             ` Chen Gang S
  0 siblings, 1 reply; 33+ messages in thread
From: Chen Gang S @ 2015-01-31  5:45 UTC (permalink / raw)
  To: Mike Stump; +Cc: Chris Metcalf, walt, Jeff Law, gcc-help, Michael Eager

On 1/31/15 07:00, Mike Stump wrote:
> On Jan 30, 2015, at 2:58 PM, Chen Gang S <gang.chen@sunrus.com.cn> wrote:
>> After finish analyzing the related warnings for tile, for me, they are
>> neither tile's issues nor gcc common implementation issues:
> 
> ?  They all look like they can be fixed in the port.
> 
> Why not use :P?  From i386:
> 
> ;; This mode iterator allows :P to be used for patterns that operate on                                                   
> ;; pointer-sized quantities.  Exactly one of the two alternatives will match.                                             
> (define_mode_iterator P [(SI "Pmode == SImode") (DI "Pmode == DImode")])
> 
> (define_insn "*tls_global_dynamic_64_<mode>"
>   [(set (match_operand:P 0 "register_operand" "=a")
>         (call:P
>          (mem:QI (match_operand 2 "constant_call_address_operand" "Bz"))
>          (match_operand 3)))
>    (unspec:P [(match_operand 1 "tls_symbolic_operand")]
>              UNSPEC_TLS_GD)]
>   “TARGET_64BIT"
> 

OK, thanks I shall try, hope I can finish within today (this month).


>> ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:2627: warning: operand 0 missing mode?
>>  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:2656: warning: operand 0 missing mode?
>>  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:2890: warning: operand 1 missing mode?
>>  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:2890: warning: operand 1 missing mode?
>>  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:2986: warning: operand 3 missing mode?
>>  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:3030: warning: operand 1 missing mode?
>>  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:3030: warning: operand 1 missing mode?
>>  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:3115: warning: operand 1 missing mode?
>>  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:3115: warning: operand 1 missing mode?
>>  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:3127: warning: operand 1 missing mode?
>>  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:3127: warning: operand 1 missing mode?
>>  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:3140: warning: operand 1 missing mode?
>>  ../../gcc-tile-new/gcc/config/tilegx/tilegx.md:3140: warning: operand 1 missing mode?
> 

-- 
Chen Gang

Open, share, and attitude like air, water, and life which God blessed

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2015-01-31  5:45           ` Chen Gang S
@ 2015-01-31 11:17             ` Chen Gang S
  2015-01-31 19:44               ` Mike Stump
  0 siblings, 1 reply; 33+ messages in thread
From: Chen Gang S @ 2015-01-31 11:17 UTC (permalink / raw)
  To: Mike Stump; +Cc: Chris Metcalf, walt, Jeff Law, gcc-help, Michael Eager

On 1/31/15 13:52, Chen Gang S wrote:
> On 1/31/15 07:00, Mike Stump wrote:
>> On Jan 30, 2015, at 2:58 PM, Chen Gang S <gang.chen@sunrus.com.cn> wrote:
>>> After finish analyzing the related warnings for tile, for me, they are
>>> neither tile's issues nor gcc common implementation issues:
>>
>> ?  They all look like they can be fixed in the port.
>>
>> Why not use :P?  From i386:
>>
>> ;; This mode iterator allows :P to be used for patterns that operate on                                                   
>> ;; pointer-sized quantities.  Exactly one of the two alternatives will match.                                             
>> (define_mode_iterator P [(SI "Pmode == SImode") (DI "Pmode == DImode")])
>>
>> (define_insn "*tls_global_dynamic_64_<mode>"
>>   [(set (match_operand:P 0 "register_operand" "=a")
>>         (call:P
>>          (mem:QI (match_operand 2 "constant_call_address_operand" "Bz"))
>>          (match_operand 3)))
>>    (unspec:P [(match_operand 1 "tls_symbolic_operand")]
>>              UNSPEC_TLS_GD)]
>>   “TARGET_64BIT"
>>
> 
> OK, thanks I shall try, hope I can finish within today (this month).

After try, it will report compiling error, the related information is
below:

  Modification:

    diff --git a/gcc/config/tilegx/tilegx.md b/gcc/config/tilegx/tilegx.md
    index 7ece171..fb9c097 100644
    --- a/gcc/config/tilegx/tilegx.md
    +++ b/gcc/config/tilegx/tilegx.md
    @@ -281,6 +281,8 @@
     (define_mode_iterator FI48MODE [SF DF SI DI])
     (define_mode_iterator VEC48MODE [V8QI V4HI])
     (define_mode_iterator VEC248MODE [V8QI V4HI V2SI])
    +(define_mode_iterator P [(SI "Pmode == SImode") (DI "Pmode == DImode")
    +                        (HI "Pmode == HImode") (QI "Pmode == QImode")])
     
     (define_mode_attr n [(QI "1") (HI "2") (SI "4") (DI "")
                         (V8QI "1") (V4HI "2") (V2SI "4")])
    @@ -2625,7 +2627,7 @@
       [(set_attr "type" "X1")])
     
     (define_insn "indirect_jump"
    -  [(set (pc) (match_operand 0 "pointer_operand" "rO"))]
    +  [(set (pc) (match_operand:P 0 "pointer_operand" "rO"))]
       ""
       "jr\t%r0"
       [(set_attr "type" "Y1")])

  The related error:

    g++ -c  -DIN_GCC_FRONTEND -g -O2 -DIN_GCC  -DCROSS_DIRECTORY_STRUCTURE  -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -fno-common  -DHAVE_CONFIG_H -I. -Ic -I../../gcc-tile-new/gcc -I../../gcc-tile-new/gcc/c -I../../gcc-tile-new/gcc/../include -I../../gcc-tile-new/gcc/../libcpp/include  -I../../gcc-tile-new/gcc/../libdecnumber -I../../gcc-tile-new/gcc/../libdecnumber/dpd -I../libdecnumber -I../../gcc-tile-new/gcc/../libbacktrace   -o c/c-lang.o -MT c/c-lang.o -MMD -MP -MF c/.deps/c-lang.TPo ../../gcc-tile-new/gcc/c/c-lang.c
    In file included from ./tm.h:30:0,
                     from ../../gcc-tile-new/gcc/c/c-lang.c:24:
    ./insn-flags.h:114:0: warning: "HAVE_indirect_jump" redefined
     #define HAVE_indirect_jump (Pmode == DImode)
     ^
    ./insn-flags.h:113:0: note: this is the location of the previous definition
     #define HAVE_indirect_jump (Pmode == SImode)
     ^
    ./insn-flags.h:796:58: error: ‘rtx_def* gen_indirect_jump(rtx)’ was declared ‘extern’ and later ‘static’ [-fpermissive]
     static inline rtx gen_indirect_jump                  (rtx);
                                                              ^
    ./insn-flags.h:795:19: note: previous declaration of ‘rtx_def* gen_indirect_jump(rtx)’
     extern rtx        gen_indirect_jump                  (rtx);
                       ^
    ./insn-flags.h: In function ‘rtx_def* gen_indirect_jump(rtx)’:
    ./insn-flags.h:804:1: error: redefinition of ‘rtx_def* gen_indirect_jump(rtx)’
     gen_indirect_jump(rtx ARG_UNUSED (a))
     ^
    ./insn-flags.h:798:1: note: ‘rtx_def* gen_indirect_jump(rtx)’ previously defined here
     gen_indirect_jump(rtx ARG_UNUSED (a))
     ^

Do we need additional limitition/completement to follow with the related
define_insn?

And if we can really let pointer_operand has type, I guess, we also need
remove the related tile code in "gcc/config/tilegx/tilegx.c" (original
code assumed that pointer_operand is VOIDmode):

  3604           /* pointer_operand and pmode_register_operand operands do
  3605              not specify a mode, so use the operand's mode instead
  3606              (which should always be right by the time we get here,
  3607              except for constants, which are VOIDmode).  */
  3608           if (opmode == VOIDmode)
  3609             {
  3610               machine_mode m = GET_MODE (op[opnum]);
  3611               gcc_assert (m == Pmode || m == VOIDmode);
  3612               opmode = Pmode;
  3613             }


Thanks.
-- 
Chen Gang

Open, share, and attitude like air, water, and life which God blessed

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2015-01-31 11:17             ` Chen Gang S
@ 2015-01-31 19:44               ` Mike Stump
  2015-02-01  0:20                 ` Chen Gang S
  2015-02-03 14:20                 ` Chen Gang S
  0 siblings, 2 replies; 33+ messages in thread
From: Mike Stump @ 2015-01-31 19:44 UTC (permalink / raw)
  To: Chen Gang S; +Cc: Chris Metcalf, walt, Jeff Law, gcc-help, Michael Eager

On Jan 31, 2015, at 3:24 AM, Chen Gang S <gang.chen@sunrus.com.cn> wrote:
>    ./insn-flags.h:114:0: warning: "HAVE_indirect_jump" redefined
>     #define HAVE_indirect_jump (Pmode == DImode)

So, the 386 port uses modeless define expands from the well known named patterns and they mix in <mode> to the name of the non-well known named patterns.

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2015-01-31 19:44               ` Mike Stump
@ 2015-02-01  0:20                 ` Chen Gang S
  2015-02-03 14:20                 ` Chen Gang S
  1 sibling, 0 replies; 33+ messages in thread
From: Chen Gang S @ 2015-02-01  0:20 UTC (permalink / raw)
  To: Mike Stump; +Cc: Chris Metcalf, walt, Jeff Law, gcc-help, Michael Eager

On 2/1/15 03:42, Mike Stump wrote:
> On Jan 31, 2015, at 3:24 AM, Chen Gang S <gang.chen@sunrus.com.cn> wrote:
>>    ./insn-flags.h:114:0: warning: "HAVE_indirect_jump" redefined
>>     #define HAVE_indirect_jump (Pmode == DImode)
> 
> So, the 386 port uses modeless define expands from the well known named patterns and they mix in <mode> to the name of the non-well known named patterns.
> 

OK, thanks. According to your suggestions, I should fix this issue :-)

I shall try to finish it within next week (2015-02-08).


Thanks.
-- 
Chen Gang

Open, share, and attitude like air, water, and life which God blessed

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2015-01-31 19:44               ` Mike Stump
  2015-02-01  0:20                 ` Chen Gang S
@ 2015-02-03 14:20                 ` Chen Gang S
  2015-02-03 14:28                   ` Chen Gang S
  2015-02-03 17:24                   ` Mike Stump
  1 sibling, 2 replies; 33+ messages in thread
From: Chen Gang S @ 2015-02-03 14:20 UTC (permalink / raw)
  To: Mike Stump; +Cc: Chris Metcalf, walt, Jeff Law, gcc-help, Michael Eager

On 02/01/2015 03:42 AM, Mike Stump wrote:
> On Jan 31, 2015, at 3:24 AM, Chen Gang S <gang.chen@sunrus.com.cn> wrote:
>>    ./insn-flags.h:114:0: warning: "HAVE_indirect_jump" redefined
>>     #define HAVE_indirect_jump (Pmode == DImode)
> 
> So, the 386 port uses modeless define expands from the well known named patterns and they mix in <mode> to the name of the non-well known named patterns.
> 

After try, modeless define needs multiple functions, and 'i386.c' needs
to know about them. e.g. let 'ix86_gen_tls_global_dynamic_64' point to
gen_tls_global_dynamic_64_di() or gen_tls_global_dynamic_64_si().

I guess, following this way, quite a few code in 'tilegx.c' will be
modified for it, or it will cause issue (still look for the original no
mode function name). e.g.

  ../../gcc-tile-new/gcc/config/tilegx/tilegx.c:2925:5: error: ‘CODE_FOR_insn_ld’ was not declared in this scope
     { CODE_FOR_insn_ld,                   NULL }, /* ld */
       ^

If what I said above is really correct, for me, we have to try to find
another ways to solve this issue (it is not worthy enough to modify
quite a few code only for avoiding the suggesting warnings).


Thanks.
-- 
Open, share, and attitude like air, water, and life which God blessed.

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2015-02-03 14:20                 ` Chen Gang S
@ 2015-02-03 14:28                   ` Chen Gang S
  2015-02-03 17:24                   ` Mike Stump
  1 sibling, 0 replies; 33+ messages in thread
From: Chen Gang S @ 2015-02-03 14:28 UTC (permalink / raw)
  To: Mike Stump; +Cc: Chris Metcalf, walt, Jeff Law, gcc-help, Michael Eager

On 02/03/2015 10:20 PM, Chen Gang S wrote:
> On 02/01/2015 03:42 AM, Mike Stump wrote:
>> On Jan 31, 2015, at 3:24 AM, Chen Gang S <gang.chen@sunrus.com.cn> wrote:
>>>    ./insn-flags.h:114:0: warning: "HAVE_indirect_jump" redefined
>>>     #define HAVE_indirect_jump (Pmode == DImode)
>>
>> So, the 386 port uses modeless define expands from the well known named patterns and they mix in <mode> to the name of the non-well known named patterns.
>>
> 
> After try, modeless define needs multiple functions, and 'i386.c' needs
> to know about them. e.g. let 'ix86_gen_tls_global_dynamic_64' point to
> gen_tls_global_dynamic_64_di() or gen_tls_global_dynamic_64_si().
> 
> I guess, following this way, quite a few code in 'tilegx.c' will be
> modified for it, or it will cause issue (still look for the original no
> mode function name). e.g.
> 
>   ../../gcc-tile-new/gcc/config/tilegx/tilegx.c:2925:5: error: ‘CODE_FOR_insn_ld’ was not declared in this scope
>      { CODE_FOR_insn_ld,                   NULL }, /* ld */
>        ^
> 
> If what I said above is really correct, for me, we have to try to find
> another ways to solve this issue (it is not worthy enough to modify
> quite a few code only for avoiding the suggesting warnings).
> 

BTW: I find 'gccint.pdf' is a very valuable document to me, (e.g. Ch13
RTX, Ch16 MD, Ch17 TD). I shall read through it, and often reference to
it. I will mainly read it in the subway between my home and my office.

Welcome any ideas, suggestions and completions.

Thanks.
-- 
Open, share, and attitude like air, water, and life which God blessed.

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2015-02-03 14:20                 ` Chen Gang S
  2015-02-03 14:28                   ` Chen Gang S
@ 2015-02-03 17:24                   ` Mike Stump
  2015-02-03 23:00                     ` Chen Gang S
  1 sibling, 1 reply; 33+ messages in thread
From: Mike Stump @ 2015-02-03 17:24 UTC (permalink / raw)
  To: Chen Gang S; +Cc: Chris Metcalf, walt, Jeff Law, gcc-help, Michael Eager

On Feb 3, 2015, at 6:20 AM, Chen Gang S <gang.chen@sunrus.com.cn> wrote:
> If what I said above is really correct, for me, we have to try to find
> another ways to solve this issue (it is not worthy enough to modify
> quite a few code only for avoiding the suggesting warnings).

So, ultimately, it is reasonable to ask, is it better to so fix the warnings or leave them as is…

Also, one is free to research better techniques on how to either improve the warning or eliminate it entirely.  For example, one could have an modeless operation be auto (a la C++) instead of always VOIDmode and have auto turn into VOIDmode unless the mode can be deduced.  For example (set (reg:auto ) (and:DI )) deduces to DI.  Maybe failure to deduce would be what  we warn for.  This could be another way to get rid of some of the warnings.

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2015-02-03 17:24                   ` Mike Stump
@ 2015-02-03 23:00                     ` Chen Gang S
  0 siblings, 0 replies; 33+ messages in thread
From: Chen Gang S @ 2015-02-03 23:00 UTC (permalink / raw)
  To: Mike Stump; +Cc: Chris Metcalf, walt, Jeff Law, gcc-help, Michael Eager

On 02/04/2015 01:24 AM, Mike Stump wrote:
> On Feb 3, 2015, at 6:20 AM, Chen Gang S <gang.chen@sunrus.com.cn> wrote:
>> If what I said above is really correct, for me, we have to try to find
>> another ways to solve this issue (it is not worthy enough to modify
>> quite a few code only for avoiding the suggesting warnings).
> 
> So, ultimately, it is reasonable to ask, is it better to so fix the warnings or leave them as isÂ…
> 

OK, thanks. And excuse me, originally, I am not quite familiar with gcc,
so the related consult may be not quite precise.

> Also, one is free to research better techniques on how to either improve the warning or eliminate it entirely.  For example, one could have an modeless operation be auto (a la C++) instead of always VOIDmode and have auto turn into VOIDmode unless the mode can be deduced.  For example (set (reg:auto ) (and:DI )) deduces to DI.  Maybe failure to deduce would be what  we warn for.  This could be another way to get rid of some of the warnings.
> 

OK, thank you for your suggestions and ideas.

For me, I prefer to add additional mode in rtl template (e.g. IVOIDmode)
to let genrecog know about the rtl template intends to use VOIDmode, so
needn't warn again (only treat IVOIDmode as VOIDmode without warning).

 - Just like most of languages (C, C++), can use type cast to avoid
   warnings, so it is easy understanding to add the same features for
   rtl template.

 - This modification is the lowest cost: not only tile, but also I guess
   another archs may also have this kind of issue.

 - This modification is easy and clear enough to be documented to let
   all other members know about it. And it also compitables with all
   original rtl template features.


Welcome any additional ideas, suggestions and completions.

Thanks.
-- 
Open, share, and attitude like air, water, and life which God blessed.

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2015-01-24 13:24     ` Chen Gang S
  2015-01-30 22:50       ` Chen Gang S
@ 2015-07-19 22:25       ` Chen Gang
  2015-07-29 21:00         ` Chen Gang
  1 sibling, 1 reply; 33+ messages in thread
From: Chen Gang @ 2015-07-19 22:25 UTC (permalink / raw)
  To: Chris Metcalf, walt
  Cc: Jeff Law, gcc-help, Mike Stump, Michael Eager, Richard Henderson,
	Peter Maydell, Andreas Färber, walt, rth

Hello all:

At present (after a half year), with the much help of QEMU members,
tilegx linux-user can work (manually using busybox's sh, ls, cp, mv, vi
are OK).

Next, I shall start gcc testsuite with qemu tilegx linux-user, hope I
can finish within this month (2015-07-31).

Thanks.

On 1/24/15 21:31, Chen Gang S wrote:
> Hello Maintainers:
> 
> The result of gcc testsuite for tile without qemu is below, I guess the
> environments construction is OK:
> 
>                   === gcc Summary ===
>   
>   # of expected passes            66650
>   # of unexpected failures        42
>   # of unexpected successes       1
>   # of expected failures          107
>   # of unresolved testcases       16558
>   # of unsupported tests          1771
> 
> Based on normal testsuite and microblaze testsuite configuration, it is
> easy to config gcc testsuite for tile. Thank gcc testsuit member and
> microblaze member very much. :-)
> 
>  - Copy the original microblaze exp file as tile exp file. Export tile
>    ip to /etc/hosts.
> 
>  - Change the related compiler name and related patch to tile in tile
>    exp file.
> 
>  - Use tile cflag "-m64 -mcpu=tilegx -mcmodel=large -mlittle-endian"
>    instead of the original microblaze cflag, in tile exp file.
> 
> If OK, I shall try to make a tile patch within this month. Next month,
> I shall start tile qemu (I am preparing for it within this month). After
> communicate with qemu members, I guess, it is possible to finish it.
> 
> 
> Welcome any ideas, suggestions, and completions.
> 
> Thanks.
> 
> On 1/20/15 10:02, Chen Gang S wrote:
>> On 1/20/15 00:10, Chris Metcalf wrote:
>>> On 1/17/2015 4:52 AM, Chen Gang S wrote:
>>>> Hello Maintainers:
>>>>
>>>> I am trying to make gcc patches for tile, and need testsuite without
>>>> related hardware, so I consult:
>>>
>>> Unfortunately, at the current time, the simulator is only available as part of the commercial Multicore Development Environment package.  A qemu port for tile hardware would certainly be welcome, but to my knowledge, no one has completed such a port yet.  ISA and ABI documentation for tilegx are available at www.tilera.com/scm.
>>>
>>
>> OK, thank you very much, and the documentation is really valuable to me.
>>
>> After finish gcc tile testsuite (hope I can finish within this month),
>> I shall continue for tile qemu, I should try my best for it, hope I can
>> finish: "can run gcc testsuite with the tile qemu".
>>
>> At present, it is really very hard to me, but for me, it is my duty (I
>> met it, and it was within my original boarder).
>>
>>
>> For me, nothing is impossible, if God blessed.
>>
>>
>> Thanks.
>>
> 

Thanks.
-- 
Chen Gang

Open, share, and attitude like air, water, and life which God blessed

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2015-07-19 22:25       ` Chen Gang
@ 2015-07-29 21:00         ` Chen Gang
       [not found]           ` <55E27DB9.6050606@hotmail.com>
  0 siblings, 1 reply; 33+ messages in thread
From: Chen Gang @ 2015-07-29 21:00 UTC (permalink / raw)
  To: Chris Metcalf, walt
  Cc: Jeff Law, gcc-help, Mike Stump, Michael Eager, Richard Henderson,
	Peter Maydell, Andreas Färber, rth

On 7/20/15 06:26, Chen Gang wrote:
> Hello all:
> 
> At present (after a half year), with the much help of QEMU members,
> tilegx linux-user can work (manually using busybox's sh, ls, cp, mv, vi
> are OK).
> 
> Next, I shall start gcc testsuite with qemu tilegx linux-user, hope I
> can finish within this month (2015-07-31).
>

Sorry, I can not finish the qemu test within this month. The reason is
my tilegx qemu is still lack of some instructions implementation, next,
I should finish them firstly (I implemented most insns, but not all).

                  === gcc Summary ===
  
  # of expected passes            69830
  # of unexpected failures        4312
  # of unexpected successes       2
  # of expected failures          108
  # of unresolved testcases       1776
  # of unsupported tests          1567

More than 4K failures are because tilegx qemu lacks of instruction's
implementation, and also more than 10 issues are for TIMEOUT (I guess,
my original tilegx qemu instruction's implementation still has bugs).

I shall try to finish it within next month, although I am not quite sure
(it needs enough time resources on it, but I am lack of time resources:
I can only spend less 1 hour per work day and 2 hours per week end day).



Thanks.
 
> Thanks.
> 
> On 1/24/15 21:31, Chen Gang S wrote:
>> Hello Maintainers:
>>
>> The result of gcc testsuite for tile without qemu is below, I guess the
>> environments construction is OK:
>>
>>                   === gcc Summary ===
>>   
>>   # of expected passes            66650
>>   # of unexpected failures        42
>>   # of unexpected successes       1
>>   # of expected failures          107
>>   # of unresolved testcases       16558
>>   # of unsupported tests          1771
>>
>> Based on normal testsuite and microblaze testsuite configuration, it is
>> easy to config gcc testsuite for tile. Thank gcc testsuit member and
>> microblaze member very much. :-)
>>
>>  - Copy the original microblaze exp file as tile exp file. Export tile
>>    ip to /etc/hosts.
>>
>>  - Change the related compiler name and related patch to tile in tile
>>    exp file.
>>
>>  - Use tile cflag "-m64 -mcpu=tilegx -mcmodel=large -mlittle-endian"
>>    instead of the original microblaze cflag, in tile exp file.
>>
>> If OK, I shall try to make a tile patch within this month. Next month,
>> I shall start tile qemu (I am preparing for it within this month). After
>> communicate with qemu members, I guess, it is possible to finish it.
>>
>>
>> Welcome any ideas, suggestions, and completions.
>>
>> Thanks.
>>
>> On 1/20/15 10:02, Chen Gang S wrote:
>>> On 1/20/15 00:10, Chris Metcalf wrote:
>>>> On 1/17/2015 4:52 AM, Chen Gang S wrote:
>>>>> Hello Maintainers:
>>>>>
>>>>> I am trying to make gcc patches for tile, and need testsuite without
>>>>> related hardware, so I consult:
>>>>
>>>> Unfortunately, at the current time, the simulator is only available as part of the commercial Multicore Development Environment package.  A qemu port for tile hardware would certainly be welcome, but to my knowledge, no one has completed such a port yet.  ISA and ABI documentation for tilegx are available at www.tilera.com/scm.
>>>>
>>>
>>> OK, thank you very much, and the documentation is really valuable to me.
>>>
>>> After finish gcc tile testsuite (hope I can finish within this month),
>>> I shall continue for tile qemu, I should try my best for it, hope I can
>>> finish: "can run gcc testsuite with the tile qemu".
>>>
>>> At present, it is really very hard to me, but for me, it is my duty (I
>>> met it, and it was within my original boarder).
>>>
>>>
>>> For me, nothing is impossible, if God blessed.
>>>
>>>
>>> Thanks.
>>>
>>
> 
> Thanks.
> 

-- 
Chen Gang

Open, share, and attitude like air, water, and life which God blessed

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
       [not found]           ` <55E27DB9.6050606@hotmail.com>
@ 2015-08-30  3:50             ` Chen Gang
  2015-10-01  4:10               ` Chen Gang
       [not found]               ` <560CB2C0.7000107@hotmail.com>
  0 siblings, 2 replies; 33+ messages in thread
From: Chen Gang @ 2015-08-30  3:50 UTC (permalink / raw)
  To: Chris Metcalf, walt
  Cc: Jeff Law, gcc-help, Mike Stump, Michael Eager, Richard Henderson,
	Peter Maydell, Andreas Färber, rth


Oh, sorry again, I did not finish qemu test within this month, again.
Current status is:

                  === gcc Summary ===

  # of expected passes            76725
  # of unexpected failures        790
  # of unexpected successes       7
  # of expected failures          113
  # of unresolved testcases       142
  # of unsupported tests          1483


My main excuses are:

 - We are lack of tilegx floating point insns related documents, we have
   to 'guess' implementation details. At last, we found ways to process
   it (we spent more than a half month free time resources for it).

 - My related qemu code need be refactor before merging into qemu master
   tree. At present, we are refactoring and merging tilegx code to qemu
   master tree (mainly by qemu related members).

Hope I can finish qemu tilegx gcc testsuite within next month (I guess,
it should be done in time).

 - Test the refactored and merged code again, based on it, I continue to
   fix gcc testsuite related issues.

 - Fix all 700+ gcc testsuite issues (10+ for pending issues, and the
   others are for UN-implementation insns issues, I guess).


Thanks.


On 7/30/15 05:01, Chen Gang wrote:
> On 7/20/15 06:26, Chen Gang wrote:
>> Hello all:
>>
>> At present (after a half year), with the much help of QEMU members,
>> tilegx linux-user can work (manually using busybox's sh, ls, cp, mv, vi
>> are OK).
>>
>> Next, I shall start gcc testsuite with qemu tilegx linux-user, hope I
>> can finish within this month (2015-07-31).
>>
>
> Sorry, I can not finish the qemu test within this month. The reason is
> my tilegx qemu is still lack of some instructions implementation, next,
> I should finish them firstly (I implemented most insns, but not all).
>
> === gcc Summary ===
>
> # of expected passes 69830
> # of unexpected failures 4312
> # of unexpected successes 2
> # of expected failures 108
> # of unresolved testcases 1776
> # of unsupported tests 1567
>
> More than 4K failures are because tilegx qemu lacks of instruction's
> implementation, and also more than 10 issues are for TIMEOUT (I guess,
> my original tilegx qemu instruction's implementation still has bugs).
>
> I shall try to finish it within next month, although I am not quite sure
> (it needs enough time resources on it, but I am lack of time resources:
> I can only spend less 1 hour per work day and 2 hours per week end day).
>
>
>
> Thanks.
>
>> Thanks.
>>
>> On 1/24/15 21:31, Chen Gang S wrote:
>>> Hello Maintainers:
>>>
>>> The result of gcc testsuite for tile without qemu is below, I guess the
>>> environments construction is OK:
>>>
>>> === gcc Summary ===
>>>
>>> # of expected passes 66650
>>> # of unexpected failures 42
>>> # of unexpected successes 1
>>> # of expected failures 107
>>> # of unresolved testcases 16558
>>> # of unsupported tests 1771
>>>
>>> Based on normal testsuite and microblaze testsuite configuration, it is
>>> easy to config gcc testsuite for tile. Thank gcc testsuit member and
>>> microblaze member very much. :-)
>>>
>>> - Copy the original microblaze exp file as tile exp file. Export tile
>>> ip to /etc/hosts.
>>>
>>> - Change the related compiler name and related patch to tile in tile
>>> exp file.
>>>
>>> - Use tile cflag "-m64 -mcpu=tilegx -mcmodel=large -mlittle-endian"
>>> instead of the original microblaze cflag, in tile exp file.
>>>
>>> If OK, I shall try to make a tile patch within this month. Next month,
>>> I shall start tile qemu (I am preparing for it within this month). After
>>> communicate with qemu members, I guess, it is possible to finish it.
>>>
>>>
>>> Welcome any ideas, suggestions, and completions.
>>>
>>> Thanks.
>>>
>>> On 1/20/15 10:02, Chen Gang S wrote:
>>>> On 1/20/15 00:10, Chris Metcalf wrote:
>>>>> On 1/17/2015 4:52 AM, Chen Gang S wrote:
>>>>>> Hello Maintainers:
>>>>>>
>>>>>> I am trying to make gcc patches for tile, and need testsuite without
>>>>>> related hardware, so I consult:
>>>>>
>>>>> Unfortunately, at the current time, the simulator is only available as part of the commercial Multicore Development Environment package. A qemu port for tile hardware would certainly be welcome, but to my knowledge, no one has completed such a port yet. ISA and ABI documentation for tilegx are available at www.tilera.com/scm.
>>>>>
>>>>
>>>> OK, thank you very much, and the documentation is really valuable to me.
>>>>
>>>> After finish gcc tile testsuite (hope I can finish within this month),
>>>> I shall continue for tile qemu, I should try my best for it, hope I can
>>>> finish: "can run gcc testsuite with the tile qemu".
>>>>
>>>> At present, it is really very hard to me, but for me, it is my duty (I
>>>> met it, and it was within my original boarder).
>>>>
>>>>
>>>> For me, nothing is impossible, if God blessed.
>>>>
>>>>
>>>> Thanks.
>>>>
>>>
>>
>> Thanks.
>>
>

--
Chen Gang

Open, share, and attitude like air, water, and life which God blessed
 		 	   		  

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2015-08-30  3:50             ` Chen Gang
@ 2015-10-01  4:10               ` Chen Gang
       [not found]               ` <560CB2C0.7000107@hotmail.com>
  1 sibling, 0 replies; 33+ messages in thread
From: Chen Gang @ 2015-10-01  4:10 UTC (permalink / raw)
  To: Chris Metcalf, walt
  Cc: Jeff Law, gcc-help, Mike Stump, Michael Eager, Richard Henderson,
	Peter Maydell, Andreas Färber, rth


At present, tilegx is integrated into qemu master branch successfully
with the much help by qemu members.

But sorry, I did not finish gcc testsuite in time, the main excuse is

 - I am busy on the normal work -- sometimes, have to do overtime work.
   (my company started up an urgent project, but couldn't find suitable
   persons for it in short time, so I have to do it during these days).

Next, in Chinese National Day, I have enough free time resources on open
source, hope I finish our gcc testsuite within Chinese National Day (it
is from 2015-10-01 -- 2015-10-07).

Thanks.

On 8/30/15 11:50, Chen Gang wrote:
> 
> Oh, sorry again, I did not finish qemu test within this month, again.
> Current status is:
> 
>                   === gcc Summary ===
> 
>   # of expected passes            76725
>   # of unexpected failures        790
>   # of unexpected successes       7
>   # of expected failures          113
>   # of unresolved testcases       142
>   # of unsupported tests          1483
> 
> 
> My main excuses are:
> 
>  - We are lack of tilegx floating point insns related documents, we have
>    to 'guess' implementation details. At last, we found ways to process
>    it (we spent more than a half month free time resources for it).
> 
>  - My related qemu code need be refactor before merging into qemu master
>    tree. At present, we are refactoring and merging tilegx code to qemu
>    master tree (mainly by qemu related members).
> 
> Hope I can finish qemu tilegx gcc testsuite within next month (I guess,
> it should be done in time).
> 
>  - Test the refactored and merged code again, based on it, I continue to
>    fix gcc testsuite related issues.
> 
>  - Fix all 700+ gcc testsuite issues (10+ for pending issues, and the
>    others are for UN-implementation insns issues, I guess).
> 
> 
> Thanks.
> 
> 
> On 7/30/15 05:01, Chen Gang wrote:
>> On 7/20/15 06:26, Chen Gang wrote:
>>> Hello all:
>>>
>>> At present (after a half year), with the much help of QEMU members,
>>> tilegx linux-user can work (manually using busybox's sh, ls, cp, mv, vi
>>> are OK).
>>>
>>> Next, I shall start gcc testsuite with qemu tilegx linux-user, hope I
>>> can finish within this month (2015-07-31).
>>>
>>
>> Sorry, I can not finish the qemu test within this month. The reason is
>> my tilegx qemu is still lack of some instructions implementation, next,
>> I should finish them firstly (I implemented most insns, but not all).
>>
>> === gcc Summary ===
>>
>> # of expected passes 69830
>> # of unexpected failures 4312
>> # of unexpected successes 2
>> # of expected failures 108
>> # of unresolved testcases 1776
>> # of unsupported tests 1567
>>
>> More than 4K failures are because tilegx qemu lacks of instruction's
>> implementation, and also more than 10 issues are for TIMEOUT (I guess,
>> my original tilegx qemu instruction's implementation still has bugs).
>>
>> I shall try to finish it within next month, although I am not quite sure
>> (it needs enough time resources on it, but I am lack of time resources:
>> I can only spend less 1 hour per work day and 2 hours per week end day).
>>
>>
>>
>> Thanks.
>>
>>> Thanks.
>>>
>>> On 1/24/15 21:31, Chen Gang S wrote:
>>>> Hello Maintainers:
>>>>
>>>> The result of gcc testsuite for tile without qemu is below, I guess the
>>>> environments construction is OK:
>>>>
>>>> === gcc Summary ===
>>>>
>>>> # of expected passes 66650
>>>> # of unexpected failures 42
>>>> # of unexpected successes 1
>>>> # of expected failures 107
>>>> # of unresolved testcases 16558
>>>> # of unsupported tests 1771
>>>>
>>>> Based on normal testsuite and microblaze testsuite configuration, it is
>>>> easy to config gcc testsuite for tile. Thank gcc testsuit member and
>>>> microblaze member very much. :-)
>>>>
>>>> - Copy the original microblaze exp file as tile exp file. Export tile
>>>> ip to /etc/hosts.
>>>>
>>>> - Change the related compiler name and related patch to tile in tile
>>>> exp file.
>>>>
>>>> - Use tile cflag "-m64 -mcpu=tilegx -mcmodel=large -mlittle-endian"
>>>> instead of the original microblaze cflag, in tile exp file.
>>>>
>>>> If OK, I shall try to make a tile patch within this month. Next month,
>>>> I shall start tile qemu (I am preparing for it within this month). After
>>>> communicate with qemu members, I guess, it is possible to finish it.
>>>>
>>>>
>>>> Welcome any ideas, suggestions, and completions.
>>>>
>>>> Thanks.
>>>>
>>>> On 1/20/15 10:02, Chen Gang S wrote:
>>>>> On 1/20/15 00:10, Chris Metcalf wrote:
>>>>>> On 1/17/2015 4:52 AM, Chen Gang S wrote:
>>>>>>> Hello Maintainers:
>>>>>>>
>>>>>>> I am trying to make gcc patches for tile, and need testsuite without
>>>>>>> related hardware, so I consult:
>>>>>>
>>>>>> Unfortunately, at the current time, the simulator is only available as part of the commercial Multicore Development Environment package. A qemu port for tile hardware would certainly be welcome, but to my knowledge, no one has completed such a port yet. ISA and ABI documentation for tilegx are available at www.tilera.com/scm.
>>>>>>
>>>>>
>>>>> OK, thank you very much, and the documentation is really valuable to me.
>>>>>
>>>>> After finish gcc tile testsuite (hope I can finish within this month),
>>>>> I shall continue for tile qemu, I should try my best for it, hope I can
>>>>> finish: "can run gcc testsuite with the tile qemu".
>>>>>
>>>>> At present, it is really very hard to me, but for me, it is my duty (I
>>>>> met it, and it was within my original boarder).
>>>>>
>>>>>
>>>>> For me, nothing is impossible, if God blessed.
>>>>>
>>>>>
>>>>> Thanks.
>>>>>
>>>>
>>>
>>> Thanks.
>>>
>>
> 
> --
> Chen Gang
> 
> Open, share, and attitude like air, water, and life which God blessed
>  		 	   		  
> 

-- 
Chen Gang (陈刚)

Open, share, and attitude like air, water, and life which God blessed

^ permalink raw reply	[flat|nested] 33+ messages in thread

* RE: [Consult] tile: How to construct testsuite for tile architecture without hardware.
       [not found]               ` <560CB2C0.7000107@hotmail.com>
@ 2015-10-04 11:55                 ` Chen Gang
  2015-10-05 11:59                   ` Chen Gang
  0 siblings, 1 reply; 33+ messages in thread
From: Chen Gang @ 2015-10-04 11:55 UTC (permalink / raw)
  To: Chris Metcalf, walt
  Cc: Jeff Law, gcc-help, Mike Stump, Michael Eager, Richard Henderson,
	Peter Maydell, Andreas Färber, rth

After finish additional 7 qemu patches, our tilegx qemu can test the gcc
testsuite successfully (no any unimplementation issues). The test result
is:

            === gcc Summary ===

  # of expected passes          77012
  # of unexpected failures      622
  # of unexpected successes     7
  # of expected failures        113
  # of unresolved testcases     143
  # of unsupported tests        1476


For the 622 left issues:

 - Maybe still tilegx implementation issue, e.g.

   the floating point single mul instruction cann't get the result which
   tilegx gcc expected (it is only related with calculating: float32_mul
   calculation result is not match tilegx gcc expected).

 - Maybe envorintments configuration issues, e.g.

   for gcc guality_check, it may call gdb outside, so I need config the
   related gdb correctlly.

 - Maybe tilegx gcc issues, e.g.

   for some UNKNOWN instructions, probably generated by incorrect jump
   instructions, one sample is "-fpic -mcmodel=large" for gcc nested-5
   test.

Next, I shall: 
 
 - continue to fix the left 622 issues, and send related patches to
   qemu-devel mailing list or gcc-patches mailing list.

 - then rewrite floating point instructions, and try to let the related
   code merged into qemu mainline with qemu members' help (at present,
   floating point implementation is a temporary implementation).

 - at last, try to finish all left unimplemented instructions (there are
   still some unimplement insns left, but at present, gcc testsuite does
   not use them), and start tilegx qemu system mode, next.


Welcome any members' ideas, suggestion, and completions. :-)


Thanks.

Chen Gang

Open, share, and attitude like air, water, and life which God blessed


----------------------------------------
> Date: Thu, 1 Oct 2015 12:12:48 +0800
> From: xili_gchen_5257@hotmail.com
> To: cmetcalf@ezchip.com; walt@tilera.com
> CC: law@redhat.com; gcc-help@gcc.gnu.org; mikestump@comcast.net; eager@eagerm.com; rth@redhat.com; peter.maydell@linaro.org; afaerber@suse.de; rth@twiddle.net
> Subject: Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
>
>
> At present, tilegx is integrated into qemu master branch successfully
> with the much help by qemu members.
>
> But sorry, I did not finish gcc testsuite in time, the main excuse is
>
> - I am busy on the normal work -- sometimes, have to do overtime work.
> (my company started up an urgent project, but couldn't find suitable
> persons for it in short time, so I have to do it during these days).
>
> Next, in Chinese National Day, I have enough free time resources on open
> source, hope I finish our gcc testsuite within Chinese National Day (it
> is from 2015-10-01 -- 2015-10-07).
>
> Thanks.
>
> On 8/30/15 11:50, Chen Gang wrote:
>>
>> Oh, sorry again, I did not finish qemu test within this month, again.
>> Current status is:
>>
>> === gcc Summary ===
>>
>> # of expected passes 76725
>> # of unexpected failures 790
>> # of unexpected successes 7
>> # of expected failures 113
>> # of unresolved testcases 142
>> # of unsupported tests 1483
>>
>>
>> My main excuses are:
>>
>> - We are lack of tilegx floating point insns related documents, we have
>> to 'guess' implementation details. At last, we found ways to process
>> it (we spent more than a half month free time resources for it).
>>
>> - My related qemu code need be refactor before merging into qemu master
>> tree. At present, we are refactoring and merging tilegx code to qemu
>> master tree (mainly by qemu related members).
>>
>> Hope I can finish qemu tilegx gcc testsuite within next month (I guess,
>> it should be done in time).
>>
>> - Test the refactored and merged code again, based on it, I continue to
>> fix gcc testsuite related issues.
>>
>> - Fix all 700+ gcc testsuite issues (10+ for pending issues, and the
>> others are for UN-implementation insns issues, I guess).
>>
>>
>> Thanks.
>>
>>
>> On 7/30/15 05:01, Chen Gang wrote:
>>> On 7/20/15 06:26, Chen Gang wrote:
>>>> Hello all:
>>>>
>>>> At present (after a half year), with the much help of QEMU members,
>>>> tilegx linux-user can work (manually using busybox's sh, ls, cp, mv, vi
>>>> are OK).
>>>>
>>>> Next, I shall start gcc testsuite with qemu tilegx linux-user, hope I
>>>> can finish within this month (2015-07-31).
>>>>
>>>
>>> Sorry, I can not finish the qemu test within this month. The reason is
>>> my tilegx qemu is still lack of some instructions implementation, next,
>>> I should finish them firstly (I implemented most insns, but not all).
>>>
>>> === gcc Summary ===
>>>
>>> # of expected passes 69830
>>> # of unexpected failures 4312
>>> # of unexpected successes 2
>>> # of expected failures 108
>>> # of unresolved testcases 1776
>>> # of unsupported tests 1567
>>>
>>> More than 4K failures are because tilegx qemu lacks of instruction's
>>> implementation, and also more than 10 issues are for TIMEOUT (I guess,
>>> my original tilegx qemu instruction's implementation still has bugs).
>>>
>>> I shall try to finish it within next month, although I am not quite sure
>>> (it needs enough time resources on it, but I am lack of time resources:
>>> I can only spend less 1 hour per work day and 2 hours per week end day).
>>>
>>>
>>>
>>> Thanks.
>>>
>>>> Thanks.
>>>>
>>>> On 1/24/15 21:31, Chen Gang S wrote:
>>>>> Hello Maintainers:
>>>>>
>>>>> The result of gcc testsuite for tile without qemu is below, I guess the
>>>>> environments construction is OK:
>>>>>
>>>>> === gcc Summary ===
>>>>>
>>>>> # of expected passes 66650
>>>>> # of unexpected failures 42
>>>>> # of unexpected successes 1
>>>>> # of expected failures 107
>>>>> # of unresolved testcases 16558
>>>>> # of unsupported tests 1771
>>>>>
>>>>> Based on normal testsuite and microblaze testsuite configuration, it is
>>>>> easy to config gcc testsuite for tile. Thank gcc testsuit member and
>>>>> microblaze member very much. :-)
>>>>>
>>>>> - Copy the original microblaze exp file as tile exp file. Export tile
>>>>> ip to /etc/hosts.
>>>>>
>>>>> - Change the related compiler name and related patch to tile in tile
>>>>> exp file.
>>>>>
>>>>> - Use tile cflag "-m64 -mcpu=tilegx -mcmodel=large -mlittle-endian"
>>>>> instead of the original microblaze cflag, in tile exp file.
>>>>>
>>>>> If OK, I shall try to make a tile patch within this month. Next month,
>>>>> I shall start tile qemu (I am preparing for it within this month). After
>>>>> communicate with qemu members, I guess, it is possible to finish it.
>>>>>
>>>>>
>>>>> Welcome any ideas, suggestions, and completions.
>>>>>
>>>>> Thanks.
>>>>>
>>>>> On 1/20/15 10:02, Chen Gang S wrote:
>>>>>> On 1/20/15 00:10, Chris Metcalf wrote:
>>>>>>> On 1/17/2015 4:52 AM, Chen Gang S wrote:
>>>>>>>> Hello Maintainers:
>>>>>>>>
>>>>>>>> I am trying to make gcc patches for tile, and need testsuite without
>>>>>>>> related hardware, so I consult:
>>>>>>>
>>>>>>> Unfortunately, at the current time, the simulator is only available as part of the commercial Multicore Development Environment package. A qemu port for tile hardware would certainly be welcome, but to my knowledge, no one has completed such a port yet. ISA and ABI documentation for tilegx are available at www.tilera.com/scm.
>>>>>>>
>>>>>>
>>>>>> OK, thank you very much, and the documentation is really valuable to me.
>>>>>>
>>>>>> After finish gcc tile testsuite (hope I can finish within this month),
>>>>>> I shall continue for tile qemu, I should try my best for it, hope I can
>>>>>> finish: "can run gcc testsuite with the tile qemu".
>>>>>>
>>>>>> At present, it is really very hard to me, but for me, it is my duty (I
>>>>>> met it, and it was within my original boarder).
>>>>>>
>>>>>>
>>>>>> For me, nothing is impossible, if God blessed.
>>>>>>
>>>>>>
>>>>>> Thanks.
>>>>>>
>>>>>
>>>>
>>>> Thanks.
>>>>
>>>
>>
>> --
>> Chen Gang
>>
>> Open, share, and attitude like air, water, and life which God blessed
>>
>>
>
> --
> Chen Gang (陈刚)
>
> Open, share, and attitude like air, water, and life which God blessed
 		 	   		  

^ permalink raw reply	[flat|nested] 33+ messages in thread

* RE: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2015-10-04 11:55                 ` Chen Gang
@ 2015-10-05 11:59                   ` Chen Gang
  2015-10-17  6:37                     ` Chen Gang
  0 siblings, 1 reply; 33+ messages in thread
From: Chen Gang @ 2015-10-05 11:59 UTC (permalink / raw)
  To: Chris Metcalf, walt
  Cc: Jeff Law, gcc-help, Mike Stump, Michael Eager, Richard Henderson,
	Peter Maydell, Andreas Färber, rth

After fix the tillegx qemu's fsingle floating point insns issue, the gcc test suite result is:

		=== gcc Summary ===

# of expected passes		77272
# of unexpected failures	365
# of unexpected successes	7
# of expected failures		113
# of unresolved testcases	141
# of unsupported tests		1476

And I shall continue to analyze the left issues, next. :-)


Thanks.
--
Chen Gang

Open, share, and attitude like air, water, and life which God blessed


----------------------------------------
> From: xili_gchen_5257@hotmail.com
> To: cmetcalf@ezchip.com; walt@tilera.com
> CC: law@redhat.com; gcc-help@gcc.gnu.org; mikestump@comcast.net; eager@eagerm.com; rth@redhat.com; peter.maydell@linaro.org; afaerber@suse.de; rth@twiddle.net
> Subject: RE: [Consult] tile: How to construct testsuite for tile architecture without hardware.
> Date: Sun, 4 Oct 2015 19:55:44 +0800
>
> After finish additional 7 qemu patches, our tilegx qemu can test the gcc
> testsuite successfully (no any unimplementation issues). The test result
> is:
>
> === gcc Summary ===
>
> # of expected passes 77012
> # of unexpected failures 622
> # of unexpected successes 7
> # of expected failures 113
> # of unresolved testcases 143
> # of unsupported tests 1476
>
>
> For the 622 left issues:
>
> - Maybe still tilegx implementation issue, e.g.
>
> the floating point single mul instruction cann't get the result which
> tilegx gcc expected (it is only related with calculating: float32_mul
> calculation result is not match tilegx gcc expected).
>
> - Maybe envorintments configuration issues, e.g.
>
> for gcc guality_check, it may call gdb outside, so I need config the
> related gdb correctlly.
>
> - Maybe tilegx gcc issues, e.g.
>
> for some UNKNOWN instructions, probably generated by incorrect jump
> instructions, one sample is "-fpic -mcmodel=large" for gcc nested-5
> test.
>
> Next, I shall:
>
> - continue to fix the left 622 issues, and send related patches to
> qemu-devel mailing list or gcc-patches mailing list.
>
> - then rewrite floating point instructions, and try to let the related
> code merged into qemu mainline with qemu members' help (at present,
> floating point implementation is a temporary implementation).
>
> - at last, try to finish all left unimplemented instructions (there are
> still some unimplement insns left, but at present, gcc testsuite does
> not use them), and start tilegx qemu system mode, next.
>
>
> Welcome any members' ideas, suggestion, and completions. :-)
>
>
> Thanks.
>
> Chen Gang
>
> Open, share, and attitude like air, water, and life which God blessed
>
>
> ----------------------------------------
>> Date: Thu, 1 Oct 2015 12:12:48 +0800
>> From: xili_gchen_5257@hotmail.com
>> To: cmetcalf@ezchip.com; walt@tilera.com
>> CC: law@redhat.com; gcc-help@gcc.gnu.org; mikestump@comcast.net; eager@eagerm.com; rth@redhat.com; peter.maydell@linaro.org; afaerber@suse.de; rth@twiddle.net
>> Subject: Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
>>
>>
>> At present, tilegx is integrated into qemu master branch successfully
>> with the much help by qemu members.
>>
>> But sorry, I did not finish gcc testsuite in time, the main excuse is
>>
>> - I am busy on the normal work -- sometimes, have to do overtime work.
>> (my company started up an urgent project, but couldn't find suitable
>> persons for it in short time, so I have to do it during these days).
>>
>> Next, in Chinese National Day, I have enough free time resources on open
>> source, hope I finish our gcc testsuite within Chinese National Day (it
>> is from 2015-10-01 -- 2015-10-07).
>>
>> Thanks.
>>
>> On 8/30/15 11:50, Chen Gang wrote:
>>>
>>> Oh, sorry again, I did not finish qemu test within this month, again.
>>> Current status is:
>>>
>>> === gcc Summary ===
>>>
>>> # of expected passes 76725
>>> # of unexpected failures 790
>>> # of unexpected successes 7
>>> # of expected failures 113
>>> # of unresolved testcases 142
>>> # of unsupported tests 1483
>>>
>>>
>>> My main excuses are:
>>>
>>> - We are lack of tilegx floating point insns related documents, we have
>>> to 'guess' implementation details. At last, we found ways to process
>>> it (we spent more than a half month free time resources for it).
>>>
>>> - My related qemu code need be refactor before merging into qemu master
>>> tree. At present, we are refactoring and merging tilegx code to qemu
>>> master tree (mainly by qemu related members).
>>>
>>> Hope I can finish qemu tilegx gcc testsuite within next month (I guess,
>>> it should be done in time).
>>>
>>> - Test the refactored and merged code again, based on it, I continue to
>>> fix gcc testsuite related issues.
>>>
>>> - Fix all 700+ gcc testsuite issues (10+ for pending issues, and the
>>> others are for UN-implementation insns issues, I guess).
>>>
>>>
>>> Thanks.
>>>
>>>
>>> On 7/30/15 05:01, Chen Gang wrote:
>>>> On 7/20/15 06:26, Chen Gang wrote:
>>>>> Hello all:
>>>>>
>>>>> At present (after a half year), with the much help of QEMU members,
>>>>> tilegx linux-user can work (manually using busybox's sh, ls, cp, mv, vi
>>>>> are OK).
>>>>>
>>>>> Next, I shall start gcc testsuite with qemu tilegx linux-user, hope I
>>>>> can finish within this month (2015-07-31).
>>>>>
>>>>
>>>> Sorry, I can not finish the qemu test within this month. The reason is
>>>> my tilegx qemu is still lack of some instructions implementation, next,
>>>> I should finish them firstly (I implemented most insns, but not all).
>>>>
>>>> === gcc Summary ===
>>>>
>>>> # of expected passes 69830
>>>> # of unexpected failures 4312
>>>> # of unexpected successes 2
>>>> # of expected failures 108
>>>> # of unresolved testcases 1776
>>>> # of unsupported tests 1567
>>>>
>>>> More than 4K failures are because tilegx qemu lacks of instruction's
>>>> implementation, and also more than 10 issues are for TIMEOUT (I guess,
>>>> my original tilegx qemu instruction's implementation still has bugs).
>>>>
>>>> I shall try to finish it within next month, although I am not quite sure
>>>> (it needs enough time resources on it, but I am lack of time resources:
>>>> I can only spend less 1 hour per work day and 2 hours per week end day).
>>>>
>>>>
>>>>
>>>> Thanks.
>>>>
>>>>> Thanks.
>>>>>
>>>>> On 1/24/15 21:31, Chen Gang S wrote:
>>>>>> Hello Maintainers:
>>>>>>
>>>>>> The result of gcc testsuite for tile without qemu is below, I guess the
>>>>>> environments construction is OK:
>>>>>>
>>>>>> === gcc Summary ===
>>>>>>
>>>>>> # of expected passes 66650
>>>>>> # of unexpected failures 42
>>>>>> # of unexpected successes 1
>>>>>> # of expected failures 107
>>>>>> # of unresolved testcases 16558
>>>>>> # of unsupported tests 1771
>>>>>>
>>>>>> Based on normal testsuite and microblaze testsuite configuration, it is
>>>>>> easy to config gcc testsuite for tile. Thank gcc testsuit member and
>>>>>> microblaze member very much. :-)
>>>>>>
>>>>>> - Copy the original microblaze exp file as tile exp file. Export tile
>>>>>> ip to /etc/hosts.
>>>>>>
>>>>>> - Change the related compiler name and related patch to tile in tile
>>>>>> exp file.
>>>>>>
>>>>>> - Use tile cflag "-m64 -mcpu=tilegx -mcmodel=large -mlittle-endian"
>>>>>> instead of the original microblaze cflag, in tile exp file.
>>>>>>
>>>>>> If OK, I shall try to make a tile patch within this month. Next month,
>>>>>> I shall start tile qemu (I am preparing for it within this month). After
>>>>>> communicate with qemu members, I guess, it is possible to finish it.
>>>>>>
>>>>>>
>>>>>> Welcome any ideas, suggestions, and completions.
>>>>>>
>>>>>> Thanks.
>>>>>>
>>>>>> On 1/20/15 10:02, Chen Gang S wrote:
>>>>>>> On 1/20/15 00:10, Chris Metcalf wrote:
>>>>>>>> On 1/17/2015 4:52 AM, Chen Gang S wrote:
>>>>>>>>> Hello Maintainers:
>>>>>>>>>
>>>>>>>>> I am trying to make gcc patches for tile, and need testsuite without
>>>>>>>>> related hardware, so I consult:
>>>>>>>>
>>>>>>>> Unfortunately, at the current time, the simulator is only available as part of the commercial Multicore Development Environment package. A qemu port for tile hardware would certainly be welcome, but to my knowledge, no one has completed such a port yet. ISA and ABI documentation for tilegx are available at www.tilera.com/scm.
>>>>>>>>
>>>>>>>
>>>>>>> OK, thank you very much, and the documentation is really valuable to me.
>>>>>>>
>>>>>>> After finish gcc tile testsuite (hope I can finish within this month),
>>>>>>> I shall continue for tile qemu, I should try my best for it, hope I can
>>>>>>> finish: "can run gcc testsuite with the tile qemu".
>>>>>>>
>>>>>>> At present, it is really very hard to me, but for me, it is my duty (I
>>>>>>> met it, and it was within my original boarder).
>>>>>>>
>>>>>>>
>>>>>>> For me, nothing is impossible, if God blessed.
>>>>>>>
>>>>>>>
>>>>>>> Thanks.
>>>>>>>
>>>>>>
>>>>>
>>>>> Thanks.
>>>>>
>>>>
>>>
>>> --
>>> Chen Gang
>>>
>>> Open, share, and attitude like air, water, and life which God blessed
>>>
>>>
>>
>> --
>> Chen Gang (陈刚)
>>
>> Open, share, and attitude like air, water, and life which God blessed
>
 		 	   		  

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2015-10-05 11:59                   ` Chen Gang
@ 2015-10-17  6:37                     ` Chen Gang
  2015-10-18  5:22                       ` Chen Gang
       [not found]                       ` <56232CE1.6050405@hotmail.com>
  0 siblings, 2 replies; 33+ messages in thread
From: Chen Gang @ 2015-10-17  6:37 UTC (permalink / raw)
  To: Chris Metcalf, walt
  Cc: Jeff Law, gcc-help, Mike Stump, Michael Eager, Richard Henderson,
	Peter Maydell, Andreas Färber, rth


After rebuild gcc/binutils with the latest code and correct the building
config parameters, the gcc testsuite result is:

                === gcc Summary ===

# of expected passes            77855
# of unexpected failures        162
# of unexpected successes       1
# of expected failures          120
# of unresolved testcases       131
# of unsupported tests          1477

root@localhost tile]# /upstream/release-tile/bin/tilegx-gchen-linux-gcc -v
Using built-in specs.
COLLECT_GCC=/upstream/release-tile/bin/tilegx-gchen-linux-gcc
COLLECT_LTO_WRAPPER=/upstream/release-tile/libexec/gcc/tilegx-gchen-linux/6.0.0/lto-wrapper
Target: tilegx-gchen-linux
Configured with: ../gcc/configure --target=tilegx-gchen-linux --disable-nls --enable-languages=c --enable-threads --enable-shared --enable-libssp --prefix=/upstream/release-tile --with-headers=/upstream/release-tile/include --with-sysroot=/upstream/release-tile --disable-multilib
Thread model: posix
gcc version 6.0.0 20151012 (experimental) (GCC) 

Welcome any members' ideas, suggestions, and completions.


Thanks.


On 10/5/15 19:59, Chen Gang wrote:
> After fix the tillegx qemu's fsingle floating point insns issue, the gcc test suite result is:
> 
> 		=== gcc Summary ===
> 
> # of expected passes		77272
> # of unexpected failures	365
> # of unexpected successes	7
> # of expected failures		113
> # of unresolved testcases	141
> # of unsupported tests		1476
> 
> And I shall continue to analyze the left issues, next. :-)
> 
> 
> Thanks.
> --
> Chen Gang
> 
> Open, share, and attitude like air, water, and life which God blessed
> 
> 
> ----------------------------------------
>> From: xili_gchen_5257@hotmail.com
>> To: cmetcalf@ezchip.com; walt@tilera.com
>> CC: law@redhat.com; gcc-help@gcc.gnu.org; mikestump@comcast.net; eager@eagerm.com; rth@redhat.com; peter.maydell@linaro.org; afaerber@suse.de; rth@twiddle.net
>> Subject: RE: [Consult] tile: How to construct testsuite for tile architecture without hardware.
>> Date: Sun, 4 Oct 2015 19:55:44 +0800
>>
>> After finish additional 7 qemu patches, our tilegx qemu can test the gcc
>> testsuite successfully (no any unimplementation issues). The test result
>> is:
>>
>> === gcc Summary ===
>>
>> # of expected passes 77012
>> # of unexpected failures 622
>> # of unexpected successes 7
>> # of expected failures 113
>> # of unresolved testcases 143
>> # of unsupported tests 1476
>>
>>
>> For the 622 left issues:
>>
>> - Maybe still tilegx implementation issue, e.g.
>>
>> the floating point single mul instruction cann't get the result which
>> tilegx gcc expected (it is only related with calculating: float32_mul
>> calculation result is not match tilegx gcc expected).
>>
>> - Maybe envorintments configuration issues, e.g.
>>
>> for gcc guality_check, it may call gdb outside, so I need config the
>> related gdb correctlly.
>>
>> - Maybe tilegx gcc issues, e.g.
>>
>> for some UNKNOWN instructions, probably generated by incorrect jump
>> instructions, one sample is "-fpic -mcmodel=large" for gcc nested-5
>> test.
>>
>> Next, I shall:
>>
>> - continue to fix the left 622 issues, and send related patches to
>> qemu-devel mailing list or gcc-patches mailing list.
>>
>> - then rewrite floating point instructions, and try to let the related
>> code merged into qemu mainline with qemu members' help (at present,
>> floating point implementation is a temporary implementation).
>>
>> - at last, try to finish all left unimplemented instructions (there are
>> still some unimplement insns left, but at present, gcc testsuite does
>> not use them), and start tilegx qemu system mode, next.
>>
>>
>> Welcome any members' ideas, suggestion, and completions. :-)
>>
>>
>> Thanks.
>>
>> Chen Gang
>>
>> Open, share, and attitude like air, water, and life which God blessed
>>
>>
>> ----------------------------------------
>>> Date: Thu, 1 Oct 2015 12:12:48 +0800
>>> From: xili_gchen_5257@hotmail.com
>>> To: cmetcalf@ezchip.com; walt@tilera.com
>>> CC: law@redhat.com; gcc-help@gcc.gnu.org; mikestump@comcast.net; eager@eagerm.com; rth@redhat.com; peter.maydell@linaro.org; afaerber@suse.de; rth@twiddle.net
>>> Subject: Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
>>>
>>>
>>> At present, tilegx is integrated into qemu master branch successfully
>>> with the much help by qemu members.
>>>
>>> But sorry, I did not finish gcc testsuite in time, the main excuse is
>>>
>>> - I am busy on the normal work -- sometimes, have to do overtime work.
>>> (my company started up an urgent project, but couldn't find suitable
>>> persons for it in short time, so I have to do it during these days).
>>>
>>> Next, in Chinese National Day, I have enough free time resources on open
>>> source, hope I finish our gcc testsuite within Chinese National Day (it
>>> is from 2015-10-01 -- 2015-10-07).
>>>
>>> Thanks.
>>>
>>> On 8/30/15 11:50, Chen Gang wrote:
>>>>
>>>> Oh, sorry again, I did not finish qemu test within this month, again.
>>>> Current status is:
>>>>
>>>> === gcc Summary ===
>>>>
>>>> # of expected passes 76725
>>>> # of unexpected failures 790
>>>> # of unexpected successes 7
>>>> # of expected failures 113
>>>> # of unresolved testcases 142
>>>> # of unsupported tests 1483
>>>>
>>>>
>>>> My main excuses are:
>>>>
>>>> - We are lack of tilegx floating point insns related documents, we have
>>>> to 'guess' implementation details. At last, we found ways to process
>>>> it (we spent more than a half month free time resources for it).
>>>>
>>>> - My related qemu code need be refactor before merging into qemu master
>>>> tree. At present, we are refactoring and merging tilegx code to qemu
>>>> master tree (mainly by qemu related members).
>>>>
>>>> Hope I can finish qemu tilegx gcc testsuite within next month (I guess,
>>>> it should be done in time).
>>>>
>>>> - Test the refactored and merged code again, based on it, I continue to
>>>> fix gcc testsuite related issues.
>>>>
>>>> - Fix all 700+ gcc testsuite issues (10+ for pending issues, and the
>>>> others are for UN-implementation insns issues, I guess).
>>>>
>>>>
>>>> Thanks.
>>>>
>>>>
>>>> On 7/30/15 05:01, Chen Gang wrote:
>>>>> On 7/20/15 06:26, Chen Gang wrote:
>>>>>> Hello all:
>>>>>>
>>>>>> At present (after a half year), with the much help of QEMU members,
>>>>>> tilegx linux-user can work (manually using busybox's sh, ls, cp, mv, vi
>>>>>> are OK).
>>>>>>
>>>>>> Next, I shall start gcc testsuite with qemu tilegx linux-user, hope I
>>>>>> can finish within this month (2015-07-31).
>>>>>>
>>>>>
>>>>> Sorry, I can not finish the qemu test within this month. The reason is
>>>>> my tilegx qemu is still lack of some instructions implementation, next,
>>>>> I should finish them firstly (I implemented most insns, but not all).
>>>>>
>>>>> === gcc Summary ===
>>>>>
>>>>> # of expected passes 69830
>>>>> # of unexpected failures 4312
>>>>> # of unexpected successes 2
>>>>> # of expected failures 108
>>>>> # of unresolved testcases 1776
>>>>> # of unsupported tests 1567
>>>>>
>>>>> More than 4K failures are because tilegx qemu lacks of instruction's
>>>>> implementation, and also more than 10 issues are for TIMEOUT (I guess,
>>>>> my original tilegx qemu instruction's implementation still has bugs).
>>>>>
>>>>> I shall try to finish it within next month, although I am not quite sure
>>>>> (it needs enough time resources on it, but I am lack of time resources:
>>>>> I can only spend less 1 hour per work day and 2 hours per week end day).
>>>>>
>>>>>
>>>>>
>>>>> Thanks.
>>>>>
>>>>>> Thanks.
>>>>>>
>>>>>> On 1/24/15 21:31, Chen Gang S wrote:
>>>>>>> Hello Maintainers:
>>>>>>>
>>>>>>> The result of gcc testsuite for tile without qemu is below, I guess the
>>>>>>> environments construction is OK:
>>>>>>>
>>>>>>> === gcc Summary ===
>>>>>>>
>>>>>>> # of expected passes 66650
>>>>>>> # of unexpected failures 42
>>>>>>> # of unexpected successes 1
>>>>>>> # of expected failures 107
>>>>>>> # of unresolved testcases 16558
>>>>>>> # of unsupported tests 1771
>>>>>>>
>>>>>>> Based on normal testsuite and microblaze testsuite configuration, it is
>>>>>>> easy to config gcc testsuite for tile. Thank gcc testsuit member and
>>>>>>> microblaze member very much. :-)
>>>>>>>
>>>>>>> - Copy the original microblaze exp file as tile exp file. Export tile
>>>>>>> ip to /etc/hosts.
>>>>>>>
>>>>>>> - Change the related compiler name and related patch to tile in tile
>>>>>>> exp file.
>>>>>>>
>>>>>>> - Use tile cflag "-m64 -mcpu=tilegx -mcmodel=large -mlittle-endian"
>>>>>>> instead of the original microblaze cflag, in tile exp file.
>>>>>>>
>>>>>>> If OK, I shall try to make a tile patch within this month. Next month,
>>>>>>> I shall start tile qemu (I am preparing for it within this month). After
>>>>>>> communicate with qemu members, I guess, it is possible to finish it.
>>>>>>>
>>>>>>>
>>>>>>> Welcome any ideas, suggestions, and completions.
>>>>>>>
>>>>>>> Thanks.
>>>>>>>
>>>>>>> On 1/20/15 10:02, Chen Gang S wrote:
>>>>>>>> On 1/20/15 00:10, Chris Metcalf wrote:
>>>>>>>>> On 1/17/2015 4:52 AM, Chen Gang S wrote:
>>>>>>>>>> Hello Maintainers:
>>>>>>>>>>
>>>>>>>>>> I am trying to make gcc patches for tile, and need testsuite without
>>>>>>>>>> related hardware, so I consult:
>>>>>>>>>
>>>>>>>>> Unfortunately, at the current time, the simulator is only available as part of the commercial Multicore Development Environment package. A qemu port for tile hardware would certainly be welcome, but to my knowledge, no one has completed such a port yet. ISA and ABI documentation for tilegx are available at www.tilera.com/scm.
>>>>>>>>>
>>>>>>>>
>>>>>>>> OK, thank you very much, and the documentation is really valuable to me.
>>>>>>>>
>>>>>>>> After finish gcc tile testsuite (hope I can finish within this month),
>>>>>>>> I shall continue for tile qemu, I should try my best for it, hope I can
>>>>>>>> finish: "can run gcc testsuite with the tile qemu".
>>>>>>>>
>>>>>>>> At present, it is really very hard to me, but for me, it is my duty (I
>>>>>>>> met it, and it was within my original boarder).
>>>>>>>>
>>>>>>>>
>>>>>>>> For me, nothing is impossible, if God blessed.
>>>>>>>>
>>>>>>>>
>>>>>>>> Thanks.
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>> Thanks.
>>>>>>
>>>>>
>>>>
>>>> --
>>>> Chen Gang
>>>>
>>>> Open, share, and attitude like air, water, and life which God blessed
>>>>
>>>>
>>>
>>> --
>>> Chen Gang (陈刚)
>>>
>>> Open, share, and attitude like air, water, and life which God blessed
>>
>  		 	   		  
> 

-- 
Chen Gang (陈刚)

Open, share, and attitude like air, water, and life which God blessed

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2015-10-17  6:37                     ` Chen Gang
@ 2015-10-18  5:22                       ` Chen Gang
  2015-10-18  5:42                         ` john.frankish
  2015-10-19 18:27                         ` Mike Stump
       [not found]                       ` <56232CE1.6050405@hotmail.com>
  1 sibling, 2 replies; 33+ messages in thread
From: Chen Gang @ 2015-10-18  5:22 UTC (permalink / raw)
  To: Chris Metcalf, walt
  Cc: Jeff Law, gcc-help, Mike Stump, Michael Eager, Richard Henderson,
	Peter Maydell, Andreas Färber, rth

Hello all:

After fix one qemu issue about floating point insns, correct the related
environments (make some symbol links), and reconfig building options (so
support g++), the current gcc testsuite result are:

                === gcc Summary ===

# of expected passes            78156
# of unexpected failures        98
# of unexpected successes       1
# of expected failures          120
# of unresolved testcases       1
# of unsupported tests          1384

                === g++ Summary ===

# of expected passes            83999
# of unexpected failures        78
# of unexpected successes       2
# of expected failures          277
# of unsupported tests          3568

[root@localhost build-gcc-tile]# gcc/xgcc -v
Using built-in specs.
COLLECT_GCC=gcc/xgcc
Target: tilegx-gchen-linux
Configured with: ../gcc/configure --target=tilegx-gchen-linux --disable-nls --enable-languages=c,c++ --enable-threads --enable-shared --enable-libssp --prefix=/upstream/release-tile --with-headers=/upstream/release-tile/include --with-sysroot=/upstream/release-tile --disable-multilib --disable-libquadmath --disable-libgomp --disable-libatomic
Thread model: posix
gcc version 6.0.0 20151012 (experimental) (GCC) 
[root@localhost build-gcc-tile]# gcc/xg++ -v
Using built-in specs.
COLLECT_GCC=gcc/xg++
Target: tilegx-gchen-linux
Configured with: ../gcc/configure --target=tilegx-gchen-linux --disable-nls --enable-languages=c,c++ --enable-threads --enable-shared --enable-libssp --prefix=/upstream/release-tile --with-headers=/upstream/release-tile/include --with-sysroot=/upstream/release-tile --disable-multilib --disable-libquadmath --disable-libgomp --disable-libatomic
Thread model: posix
gcc version 6.0.0 20151012 (experimental) (GCC)



Welcome any ideas, suggestions, and completions.

Thanks.


On 10/17/15 14:39, Chen Gang wrote:
> 
> After rebuild gcc/binutils with the latest code and correct the building
> config parameters, the gcc testsuite result is:
> 
>                 === gcc Summary ===
> 
> # of expected passes            77855
> # of unexpected failures        162
> # of unexpected successes       1
> # of expected failures          120
> # of unresolved testcases       131
> # of unsupported tests          1477
> 
> root@localhost tile]# /upstream/release-tile/bin/tilegx-gchen-linux-gcc -v
> Using built-in specs.
> COLLECT_GCC=/upstream/release-tile/bin/tilegx-gchen-linux-gcc
> COLLECT_LTO_WRAPPER=/upstream/release-tile/libexec/gcc/tilegx-gchen-linux/6.0.0/lto-wrapper
> Target: tilegx-gchen-linux
> Configured with: ../gcc/configure --target=tilegx-gchen-linux --disable-nls --enable-languages=c --enable-threads --enable-shared --enable-libssp --prefix=/upstream/release-tile --with-headers=/upstream/release-tile/include --with-sysroot=/upstream/release-tile --disable-multilib
> Thread model: posix
> gcc version 6.0.0 20151012 (experimental) (GCC) 
> 
> Welcome any members' ideas, suggestions, and completions.
> 
> 
> Thanks.
> 
> 
> On 10/5/15 19:59, Chen Gang wrote:
>> After fix the tillegx qemu's fsingle floating point insns issue, the gcc test suite result is:
>>
>> 		=== gcc Summary ===
>>
>> # of expected passes		77272
>> # of unexpected failures	365
>> # of unexpected successes	7
>> # of expected failures		113
>> # of unresolved testcases	141
>> # of unsupported tests		1476
>>
>> And I shall continue to analyze the left issues, next. :-)
>>
>>
>> Thanks.
>> --
>> Chen Gang
>>
>> Open, share, and attitude like air, water, and life which God blessed
>>
>>
>> ----------------------------------------
>>> From: xili_gchen_5257@hotmail.com
>>> To: cmetcalf@ezchip.com; walt@tilera.com
>>> CC: law@redhat.com; gcc-help@gcc.gnu.org; mikestump@comcast.net; eager@eagerm.com; rth@redhat.com; peter.maydell@linaro.org; afaerber@suse.de; rth@twiddle.net
>>> Subject: RE: [Consult] tile: How to construct testsuite for tile architecture without hardware.
>>> Date: Sun, 4 Oct 2015 19:55:44 +0800
>>>
>>> After finish additional 7 qemu patches, our tilegx qemu can test the gcc
>>> testsuite successfully (no any unimplementation issues). The test result
>>> is:
>>>
>>> === gcc Summary ===
>>>
>>> # of expected passes 77012
>>> # of unexpected failures 622
>>> # of unexpected successes 7
>>> # of expected failures 113
>>> # of unresolved testcases 143
>>> # of unsupported tests 1476
>>>
>>>
>>> For the 622 left issues:
>>>
>>> - Maybe still tilegx implementation issue, e.g.
>>>
>>> the floating point single mul instruction cann't get the result which
>>> tilegx gcc expected (it is only related with calculating: float32_mul
>>> calculation result is not match tilegx gcc expected).
>>>
>>> - Maybe envorintments configuration issues, e.g.
>>>
>>> for gcc guality_check, it may call gdb outside, so I need config the
>>> related gdb correctlly.
>>>
>>> - Maybe tilegx gcc issues, e.g.
>>>
>>> for some UNKNOWN instructions, probably generated by incorrect jump
>>> instructions, one sample is "-fpic -mcmodel=large" for gcc nested-5
>>> test.
>>>
>>> Next, I shall:
>>>
>>> - continue to fix the left 622 issues, and send related patches to
>>> qemu-devel mailing list or gcc-patches mailing list.
>>>
>>> - then rewrite floating point instructions, and try to let the related
>>> code merged into qemu mainline with qemu members' help (at present,
>>> floating point implementation is a temporary implementation).
>>>
>>> - at last, try to finish all left unimplemented instructions (there are
>>> still some unimplement insns left, but at present, gcc testsuite does
>>> not use them), and start tilegx qemu system mode, next.
>>>
>>>
>>> Welcome any members' ideas, suggestion, and completions. :-)
>>>
>>>
>>> Thanks.
>>>
>>> Chen Gang
>>>
>>> Open, share, and attitude like air, water, and life which God blessed
>>>
>>>
>>> ----------------------------------------
>>>> Date: Thu, 1 Oct 2015 12:12:48 +0800
>>>> From: xili_gchen_5257@hotmail.com
>>>> To: cmetcalf@ezchip.com; walt@tilera.com
>>>> CC: law@redhat.com; gcc-help@gcc.gnu.org; mikestump@comcast.net; eager@eagerm.com; rth@redhat.com; peter.maydell@linaro.org; afaerber@suse.de; rth@twiddle.net
>>>> Subject: Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
>>>>
>>>>
>>>> At present, tilegx is integrated into qemu master branch successfully
>>>> with the much help by qemu members.
>>>>
>>>> But sorry, I did not finish gcc testsuite in time, the main excuse is
>>>>
>>>> - I am busy on the normal work -- sometimes, have to do overtime work.
>>>> (my company started up an urgent project, but couldn't find suitable
>>>> persons for it in short time, so I have to do it during these days).
>>>>
>>>> Next, in Chinese National Day, I have enough free time resources on open
>>>> source, hope I finish our gcc testsuite within Chinese National Day (it
>>>> is from 2015-10-01 -- 2015-10-07).
>>>>
>>>> Thanks.
>>>>
>>>> On 8/30/15 11:50, Chen Gang wrote:
>>>>>
>>>>> Oh, sorry again, I did not finish qemu test within this month, again.
>>>>> Current status is:
>>>>>
>>>>> === gcc Summary ===
>>>>>
>>>>> # of expected passes 76725
>>>>> # of unexpected failures 790
>>>>> # of unexpected successes 7
>>>>> # of expected failures 113
>>>>> # of unresolved testcases 142
>>>>> # of unsupported tests 1483
>>>>>
>>>>>
>>>>> My main excuses are:
>>>>>
>>>>> - We are lack of tilegx floating point insns related documents, we have
>>>>> to 'guess' implementation details. At last, we found ways to process
>>>>> it (we spent more than a half month free time resources for it).
>>>>>
>>>>> - My related qemu code need be refactor before merging into qemu master
>>>>> tree. At present, we are refactoring and merging tilegx code to qemu
>>>>> master tree (mainly by qemu related members).
>>>>>
>>>>> Hope I can finish qemu tilegx gcc testsuite within next month (I guess,
>>>>> it should be done in time).
>>>>>
>>>>> - Test the refactored and merged code again, based on it, I continue to
>>>>> fix gcc testsuite related issues.
>>>>>
>>>>> - Fix all 700+ gcc testsuite issues (10+ for pending issues, and the
>>>>> others are for UN-implementation insns issues, I guess).
>>>>>
>>>>>
>>>>> Thanks.
>>>>>
>>>>>
>>>>> On 7/30/15 05:01, Chen Gang wrote:
>>>>>> On 7/20/15 06:26, Chen Gang wrote:
>>>>>>> Hello all:
>>>>>>>
>>>>>>> At present (after a half year), with the much help of QEMU members,
>>>>>>> tilegx linux-user can work (manually using busybox's sh, ls, cp, mv, vi
>>>>>>> are OK).
>>>>>>>
>>>>>>> Next, I shall start gcc testsuite with qemu tilegx linux-user, hope I
>>>>>>> can finish within this month (2015-07-31).
>>>>>>>
>>>>>>
>>>>>> Sorry, I can not finish the qemu test within this month. The reason is
>>>>>> my tilegx qemu is still lack of some instructions implementation, next,
>>>>>> I should finish them firstly (I implemented most insns, but not all).
>>>>>>
>>>>>> === gcc Summary ===
>>>>>>
>>>>>> # of expected passes 69830
>>>>>> # of unexpected failures 4312
>>>>>> # of unexpected successes 2
>>>>>> # of expected failures 108
>>>>>> # of unresolved testcases 1776
>>>>>> # of unsupported tests 1567
>>>>>>
>>>>>> More than 4K failures are because tilegx qemu lacks of instruction's
>>>>>> implementation, and also more than 10 issues are for TIMEOUT (I guess,
>>>>>> my original tilegx qemu instruction's implementation still has bugs).
>>>>>>
>>>>>> I shall try to finish it within next month, although I am not quite sure
>>>>>> (it needs enough time resources on it, but I am lack of time resources:
>>>>>> I can only spend less 1 hour per work day and 2 hours per week end day).
>>>>>>
>>>>>>
>>>>>>
>>>>>> Thanks.
>>>>>>
>>>>>>> Thanks.
>>>>>>>
>>>>>>> On 1/24/15 21:31, Chen Gang S wrote:
>>>>>>>> Hello Maintainers:
>>>>>>>>
>>>>>>>> The result of gcc testsuite for tile without qemu is below, I guess the
>>>>>>>> environments construction is OK:
>>>>>>>>
>>>>>>>> === gcc Summary ===
>>>>>>>>
>>>>>>>> # of expected passes 66650
>>>>>>>> # of unexpected failures 42
>>>>>>>> # of unexpected successes 1
>>>>>>>> # of expected failures 107
>>>>>>>> # of unresolved testcases 16558
>>>>>>>> # of unsupported tests 1771
>>>>>>>>
>>>>>>>> Based on normal testsuite and microblaze testsuite configuration, it is
>>>>>>>> easy to config gcc testsuite for tile. Thank gcc testsuit member and
>>>>>>>> microblaze member very much. :-)
>>>>>>>>
>>>>>>>> - Copy the original microblaze exp file as tile exp file. Export tile
>>>>>>>> ip to /etc/hosts.
>>>>>>>>
>>>>>>>> - Change the related compiler name and related patch to tile in tile
>>>>>>>> exp file.
>>>>>>>>
>>>>>>>> - Use tile cflag "-m64 -mcpu=tilegx -mcmodel=large -mlittle-endian"
>>>>>>>> instead of the original microblaze cflag, in tile exp file.
>>>>>>>>
>>>>>>>> If OK, I shall try to make a tile patch within this month. Next month,
>>>>>>>> I shall start tile qemu (I am preparing for it within this month). After
>>>>>>>> communicate with qemu members, I guess, it is possible to finish it.
>>>>>>>>
>>>>>>>>
>>>>>>>> Welcome any ideas, suggestions, and completions.
>>>>>>>>
>>>>>>>> Thanks.
>>>>>>>>
>>>>>>>> On 1/20/15 10:02, Chen Gang S wrote:
>>>>>>>>> On 1/20/15 00:10, Chris Metcalf wrote:
>>>>>>>>>> On 1/17/2015 4:52 AM, Chen Gang S wrote:
>>>>>>>>>>> Hello Maintainers:
>>>>>>>>>>>
>>>>>>>>>>> I am trying to make gcc patches for tile, and need testsuite without
>>>>>>>>>>> related hardware, so I consult:
>>>>>>>>>>
>>>>>>>>>> Unfortunately, at the current time, the simulator is only available as part of the commercial Multicore Development Environment package. A qemu port for tile hardware would certainly be welcome, but to my knowledge, no one has completed such a port yet. ISA and ABI documentation for tilegx are available at www.tilera.com/scm.
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> OK, thank you very much, and the documentation is really valuable to me.
>>>>>>>>>
>>>>>>>>> After finish gcc tile testsuite (hope I can finish within this month),
>>>>>>>>> I shall continue for tile qemu, I should try my best for it, hope I can
>>>>>>>>> finish: "can run gcc testsuite with the tile qemu".
>>>>>>>>>
>>>>>>>>> At present, it is really very hard to me, but for me, it is my duty (I
>>>>>>>>> met it, and it was within my original boarder).
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> For me, nothing is impossible, if God blessed.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Thanks.
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> Thanks.
>>>>>>>
>>>>>>
>>>>>
>>>>> --
>>>>> Chen Gang
>>>>>
>>>>> Open, share, and attitude like air, water, and life which God blessed
>>>>>
>>>>>
>>>>
>>>> --
>>>> Chen Gang (陈刚)
>>>>
>>>> Open, share, and attitude like air, water, and life which God blessed
>>>
>>  		 	   		  
>>
> 

-- 
Chen Gang (陈刚)

Open, share, and attitude like air, water, and life which God blessed

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2015-10-18  5:22                       ` Chen Gang
@ 2015-10-18  5:42                         ` john.frankish
  2015-10-19 18:27                         ` Mike Stump
  1 sibling, 0 replies; 33+ messages in thread
From: john.frankish @ 2015-10-18  5:42 UTC (permalink / raw)
  To: gcc-help



----- Mail original ----- 
De: "Chen Gang" <xili_gchen_5257@hotmail.com> 
À: "Chris Metcalf" <cmetcalf@ezchip.com>, walt@tilera.com 
Cc: "Jeff Law" <law@redhat.com>, "gcc-help" <gcc-help@gcc.gnu.org>, "Mike Stump" <mikestump@comcast.net>, "Michael Eager" <eager@eagerm.com>, "Richard Henderson" <rth@redhat.com>, "Peter Maydell" <peter.maydell@linaro.org>, "Andreas Färber" <afaerber@suse.de>, rth@twiddle.net 
Envoyé: Dimanche 18 Octobre 2015 09:23:45 
Objet: Re: [Consult] tile: How to construct testsuite for tile architecture without hardware. 

Hello all: 

After fix one qemu issue about floating point insns, correct the related 
environments (make some symbol links), and reconfig building options (so 
support g++), the current gcc testsuite result are: 

=== gcc Summary === 

# of expected passes 78156 
# of unexpected failures 98 
# of unexpected successes 1 
# of expected failures 120 
# of unresolved testcases 1 
# of unsupported tests 1384 

=== g++ Summary === 

# of expected passes 83999 
# of unexpected failures 78 
# of unexpected successes 2 
# of expected failures 277 
# of unsupported tests 3568 

[root@localhost build-gcc-tile]# gcc/xgcc -v 
Using built-in specs. 
COLLECT_GCC=gcc/xgcc 
Target: tilegx-gchen-linux 
Configured with: ../gcc/configure --target=tilegx-gchen-linux --disable-nls --enable-languages=c,c++ --enable-threads --enable-shared --enable-libssp --prefix=/upstream/release-tile --with-headers=/upstream/release-tile/include --with-sysroot=/upstream/release-tile --disable-multilib --disable-libquadmath --disable-libgomp --disable-libatomic 
Thread model: posix 
gcc version 6.0.0 20151012 (experimental) (GCC) 
[root@localhost build-gcc-tile]# gcc/xg++ -v 
Using built-in specs. 
COLLECT_GCC=gcc/xg++ 
Target: tilegx-gchen-linux 
Configured with: ../gcc/configure --target=tilegx-gchen-linux --disable-nls --enable-languages=c,c++ --enable-threads --enable-shared --enable-libssp --prefix=/upstream/release-tile --with-headers=/upstream/release-tile/include --with-sysroot=/upstream/release-tile --disable-multilib --disable-libquadmath --disable-libgomp --disable-libatomic 
Thread model: posix 
gcc version 6.0.0 20151012 (experimental) (GCC) 



Welcome any ideas, suggestions, and completions. 

Thanks. 


On 10/17/15 14:39, Chen Gang wrote: 
> 
> After rebuild gcc/binutils with the latest code and correct the building 
> config parameters, the gcc testsuite result is: 
> 
> === gcc Summary === 
> 
> # of expected passes 77855 
> # of unexpected failures 162 
> # of unexpected successes 1 
> # of expected failures 120 
> # of unresolved testcases 131 
> # of unsupported tests 1477 
> 
> root@localhost tile]# /upstream/release-tile/bin/tilegx-gchen-linux-gcc -v 
> Using built-in specs. 
> COLLECT_GCC=/upstream/release-tile/bin/tilegx-gchen-linux-gcc 
> COLLECT_LTO_WRAPPER=/upstream/release-tile/libexec/gcc/tilegx-gchen-linux/6.0.0/lto-wrapper 
> Target: tilegx-gchen-linux 
> Configured with: ../gcc/configure --target=tilegx-gchen-linux --disable-nls --enable-languages=c --enable-threads --enable-shared --enable-libssp --prefix=/upstream/release-tile --with-headers=/upstream/release-tile/include --with-sysroot=/upstream/release-tile --disable-multilib 
> Thread model: posix 
> gcc version 6.0.0 20151012 (experimental) (GCC) 
> 
> Welcome any members' ideas, suggestions, and completions. 
> 
> 
> Thanks. 
> 
> 
> On 10/5/15 19:59, Chen Gang wrote: 
>> After fix the tillegx qemu's fsingle floating point insns issue, the gcc test suite result is: 
>> 
>> === gcc Summary === 
>> 
>> # of expected passes 77272 
>> # of unexpected failures 365 
>> # of unexpected successes 7 
>> # of expected failures 113 
>> # of unresolved testcases 141 
>> # of unsupported tests 1476 
>> 
>> And I shall continue to analyze the left issues, next. :-) 
>> 
>> 
>> Thanks. 
>> -- 
>> Chen Gang 
>> 
>> Open, share, and attitude like air, water, and life which God blessed 
>> 
>> 
>> ---------------------------------------- 
>>> From: xili_gchen_5257@hotmail.com 
>>> To: cmetcalf@ezchip.com; walt@tilera.com 
>>> CC: law@redhat.com; gcc-help@gcc.gnu.org; mikestump@comcast.net; eager@eagerm.com; rth@redhat.com; peter.maydell@linaro.org; afaerber@suse.de; rth@twiddle.net 
>>> Subject: RE: [Consult] tile: How to construct testsuite for tile architecture without hardware. 
>>> Date: Sun, 4 Oct 2015 19:55:44 +0800 
>>> 
>>> After finish additional 7 qemu patches, our tilegx qemu can test the gcc 
>>> testsuite successfully (no any unimplementation issues). The test result 
>>> is: 
>>> 
>>> === gcc Summary === 
>>> 
>>> # of expected passes 77012 
>>> # of unexpected failures 622 
>>> # of unexpected successes 7 
>>> # of expected failures 113 
>>> # of unresolved testcases 143 
>>> # of unsupported tests 1476 
>>> 
>>> 
>>> For the 622 left issues: 
>>> 
>>> - Maybe still tilegx implementation issue, e.g. 
>>> 
>>> the floating point single mul instruction cann't get the result which 
>>> tilegx gcc expected (it is only related with calculating: float32_mul 
>>> calculation result is not match tilegx gcc expected). 
>>> 
>>> - Maybe envorintments configuration issues, e.g. 
>>> 
>>> for gcc guality_check, it may call gdb outside, so I need config the 
>>> related gdb correctlly. 
>>> 
>>> - Maybe tilegx gcc issues, e.g. 
>>> 
>>> for some UNKNOWN instructions, probably generated by incorrect jump 
>>> instructions, one sample is "-fpic -mcmodel=large" for gcc nested-5 
>>> test. 
>>> 
>>> Next, I shall: 
>>> 
>>> - continue to fix the left 622 issues, and send related patches to 
>>> qemu-devel mailing list or gcc-patches mailing list. 
>>> 
>>> - then rewrite floating point instructions, and try to let the related 
>>> code merged into qemu mainline with qemu members' help (at present, 
>>> floating point implementation is a temporary implementation). 
>>> 
>>> - at last, try to finish all left unimplemented instructions (there are 
>>> still some unimplement insns left, but at present, gcc testsuite does 
>>> not use them), and start tilegx qemu system mode, next. 
>>> 
>>> 
>>> Welcome any members' ideas, suggestion, and completions. :-) 
>>> 
>>> 
>>> Thanks. 
>>> 
>>> Chen Gang 
>>> 
>>> Open, share, and attitude like air, water, and life which God blessed 
>>> 
>>> 
>>> ---------------------------------------- 
>>>> Date: Thu, 1 Oct 2015 12:12:48 +0800 
>>>> From: xili_gchen_5257@hotmail.com 
>>>> To: cmetcalf@ezchip.com; walt@tilera.com 
>>>> CC: law@redhat.com; gcc-help@gcc.gnu.org; mikestump@comcast.net; eager@eagerm.com; rth@redhat.com; peter.maydell@linaro.org; afaerber@suse.de; rth@twiddle.net 
>>>> Subject: Re: [Consult] tile: How to construct testsuite for tile architecture without hardware. 
>>>> 
>>>> 
>>>> At present, tilegx is integrated into qemu master branch successfully 
>>>> with the much help by qemu members. 
>>>> 
>>>> But sorry, I did not finish gcc testsuite in time, the main excuse is 
>>>> 
>>>> - I am busy on the normal work -- sometimes, have to do overtime work. 
>>>> (my company started up an urgent project, but couldn't find suitable 
>>>> persons for it in short time, so I have to do it during these days). 
>>>> 
>>>> Next, in Chinese National Day, I have enough free time resources on open 
>>>> source, hope I finish our gcc testsuite within Chinese National Day (it 
>>>> is from 2015-10-01 -- 2015-10-07). 
>>>> 
>>>> Thanks. 
>>>> 
>>>> On 8/30/15 11:50, Chen Gang wrote: 
>>>>> 
>>>>> Oh, sorry again, I did not finish qemu test within this month, again. 
>>>>> Current status is: 
>>>>> 
>>>>> === gcc Summary === 
>>>>> 
>>>>> # of expected passes 76725 
>>>>> # of unexpected failures 790 
>>>>> # of unexpected successes 7 
>>>>> # of expected failures 113 
>>>>> # of unresolved testcases 142 
>>>>> # of unsupported tests 1483 
>>>>> 
>>>>> 
>>>>> My main excuses are: 
>>>>> 
>>>>> - We are lack of tilegx floating point insns related documents, we have 
>>>>> to 'guess' implementation details. At last, we found ways to process 
>>>>> it (we spent more than a half month free time resources for it). 
>>>>> 
>>>>> - My related qemu code need be refactor before merging into qemu master 
>>>>> tree. At present, we are refactoring and merging tilegx code to qemu 
>>>>> master tree (mainly by qemu related members). 
>>>>> 
>>>>> Hope I can finish qemu tilegx gcc testsuite within next month (I guess, 
>>>>> it should be done in time). 
>>>>> 
>>>>> - Test the refactored and merged code again, based on it, I continue to 
>>>>> fix gcc testsuite related issues. 
>>>>> 
>>>>> - Fix all 700+ gcc testsuite issues (10+ for pending issues, and the 
>>>>> others are for UN-implementation insns issues, I guess). 
>>>>> 
>>>>> 
>>>>> Thanks. 
>>>>> 
>>>>> 
>>>>> On 7/30/15 05:01, Chen Gang wrote: 
>>>>>> On 7/20/15 06:26, Chen Gang wrote: 
>>>>>>> Hello all: 
>>>>>>> 
>>>>>>> At present (after a half year), with the much help of QEMU members, 
>>>>>>> tilegx linux-user can work (manually using busybox's sh, ls, cp, mv, vi 
>>>>>>> are OK). 
>>>>>>> 
>>>>>>> Next, I shall start gcc testsuite with qemu tilegx linux-user, hope I 
>>>>>>> can finish within this month (2015-07-31). 
>>>>>>> 
>>>>>> 
>>>>>> Sorry, I can not finish the qemu test within this month. The reason is 
>>>>>> my tilegx qemu is still lack of some instructions implementation, next, 
>>>>>> I should finish them firstly (I implemented most insns, but not all). 
>>>>>> 
>>>>>> === gcc Summary === 
>>>>>> 
>>>>>> # of expected passes 69830 
>>>>>> # of unexpected failures 4312 
>>>>>> # of unexpected successes 2 
>>>>>> # of expected failures 108 
>>>>>> # of unresolved testcases 1776 
>>>>>> # of unsupported tests 1567 
>>>>>> 
>>>>>> More than 4K failures are because tilegx qemu lacks of instruction's 
>>>>>> implementation, and also more than 10 issues are for TIMEOUT (I guess, 
>>>>>> my original tilegx qemu instruction's implementation still has bugs). 
>>>>>> 
>>>>>> I shall try to finish it within next month, although I am not quite sure 
>>>>>> (it needs enough time resources on it, but I am lack of time resources: 
>>>>>> I can only spend less 1 hour per work day and 2 hours per week end day). 
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> Thanks. 
>>>>>> 
>>>>>>> Thanks. 
>>>>>>> 
>>>>>>> On 1/24/15 21:31, Chen Gang S wrote: 
>>>>>>>> Hello Maintainers: 
>>>>>>>> 
>>>>>>>> The result of gcc testsuite for tile without qemu is below, I guess the 
>>>>>>>> environments construction is OK: 
>>>>>>>> 
>>>>>>>> === gcc Summary === 
>>>>>>>> 
>>>>>>>> # of expected passes 66650 
>>>>>>>> # of unexpected failures 42 
>>>>>>>> # of unexpected successes 1 
>>>>>>>> # of expected failures 107 
>>>>>>>> # of unresolved testcases 16558 
>>>>>>>> # of unsupported tests 1771 
>>>>>>>> 
>>>>>>>> Based on normal testsuite and microblaze testsuite configuration, it is 
>>>>>>>> easy to config gcc testsuite for tile. Thank gcc testsuit member and 
>>>>>>>> microblaze member very much. :-) 
>>>>>>>> 
>>>>>>>> - Copy the original microblaze exp file as tile exp file. Export tile 
>>>>>>>> ip to /etc/hosts. 
>>>>>>>> 
>>>>>>>> - Change the related compiler name and related patch to tile in tile 
>>>>>>>> exp file. 
>>>>>>>> 
>>>>>>>> - Use tile cflag "-m64 -mcpu=tilegx -mcmodel=large -mlittle-endian" 
>>>>>>>> instead of the original microblaze cflag, in tile exp file. 
>>>>>>>> 
>>>>>>>> If OK, I shall try to make a tile patch within this month. Next month, 
>>>>>>>> I shall start tile qemu (I am preparing for it within this month). After 
>>>>>>>> communicate with qemu members, I guess, it is possible to finish it. 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> Welcome any ideas, suggestions, and completions. 
>>>>>>>> 
>>>>>>>> Thanks. 
>>>>>>>> 
>>>>>>>> On 1/20/15 10:02, Chen Gang S wrote: 
>>>>>>>>> On 1/20/15 00:10, Chris Metcalf wrote: 
>>>>>>>>>> On 1/17/2015 4:52 AM, Chen Gang S wrote: 
>>>>>>>>>>> Hello Maintainers: 
>>>>>>>>>>> 
>>>>>>>>>>> I am trying to make gcc patches for tile, and need testsuite without 
>>>>>>>>>>> related hardware, so I consult: 
>>>>>>>>>> 
>>>>>>>>>> Unfortunately, at the current time, the simulator is only available as part of the commercial Multicore Development Environment package. A qemu port for tile hardware would certainly be welcome, but to my knowledge, no one has completed such a port yet. ISA and ABI documentation for tilegx are available at www.tilera.com/scm. 
>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> OK, thank you very much, and the documentation is really valuable to me. 
>>>>>>>>> 
>>>>>>>>> After finish gcc tile testsuite (hope I can finish within this month), 
>>>>>>>>> I shall continue for tile qemu, I should try my best for it, hope I can 
>>>>>>>>> finish: "can run gcc testsuite with the tile qemu". 
>>>>>>>>> 
>>>>>>>>> At present, it is really very hard to me, but for me, it is my duty (I 
>>>>>>>>> met it, and it was within my original boarder). 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> For me, nothing is impossible, if God blessed. 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> Thanks. 
>>>>>>>>> 
>>>>>>>> 
>>>>>>> 
>>>>>>> Thanks. 
>>>>>>> 
>>>>>> 
>>>>> 
>>>>> -- 
>>>>> Chen Gang 
>>>>> 
>>>>> Open, share, and attitude like air, water, and life which God blessed 
>>>>> 
>>>>> 
>>>> 
>>>> -- 
>>>> Chen Gang (陈刚) 
>>>> 
>>>> Open, share, and attitude like air, water, and life which God blessed 
>>> 
>> 
>> 
> 

-- 
Chen Gang (陈刚) 

Open, share, and attitude like air, water, and life which God blessed 

[test - apologies, but I am unable to post, so maybe I can reply]


^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2015-10-18  5:22                       ` Chen Gang
  2015-10-18  5:42                         ` john.frankish
@ 2015-10-19 18:27                         ` Mike Stump
       [not found]                           ` <562572E2.6020308@hotmail.com>
  1 sibling, 1 reply; 33+ messages in thread
From: Mike Stump @ 2015-10-19 18:27 UTC (permalink / raw)
  To: Chen Gang; +Cc: gcc-help

On Oct 17, 2015, at 10:23 PM, Chen Gang <xili_gchen_5257@hotmail.com> wrote:
> After fix one qemu issue about floating point insns, correct the related
> environments (make some symbol links), and reconfig building options (so
> support g++), the current gcc testsuite result are:
> 
>                === gcc Summary ===
> 
> # of expected passes            78156

Nice.

> # of unexpected failures        98

> Welcome any ideas, suggestions, and completions.

So, if you would like to do more work, and don’t have any other plans, you could investigate the unexpected failures in the above, if you want.  I hesitate to say this, as the funnest work, is work that you want to do.  I would ask, what would you like to do next?  Other work, if you wanted to try your hand at something, would be to read through the PRs on the gcc web site, and find one that you’d like to fix and fix it.

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
       [not found]                           ` <562572E2.6020308@hotmail.com>
@ 2015-10-19 22:45                             ` Chen Gang
  2015-10-21 16:40                               ` Mike Stump
  0 siblings, 1 reply; 33+ messages in thread
From: Chen Gang @ 2015-10-19 22:45 UTC (permalink / raw)
  To: Mike Stump; +Cc: gcc-help


On 10/20/15 02:26, Mike Stump wrote:
> On Oct 17, 2015, at 10:23 PM, Chen Gang <xili_gchen_5257@hotmail.com> wrote:
>> After fix one qemu issue about floating point insns, correct the related
>> environments (make some symbol links), and reconfig building options (so
>> support g++), the current gcc testsuite result are:
>>
>>                === gcc Summary ===
>>
>> # of expected passes            78156
> 
> Nice.
> 

Thanks. :-)

>> # of unexpected failures        98
> 
>> Welcome any ideas, suggestions, and completions.
> 
> So, if you would like to do more work, and don’t have any other plans, you could investigate the unexpected failures in the above, if you want.  I hesitate to say this, as the funnest work, is work that you want to do.  I would ask, what would you like to do next?  Other work, if you wanted to try your hand at something, would be to read through the PRs on the gcc web site, and find one that you’d like to fix and fix it.
> 

At present, for me, I should continue analyzing the unexpected failures,
I have no any other choices: if I do not analyze tilegx gcc's issues, I
can not prove that these issues may be caused by qemu tilegx.

 - I am almost sure that, tilegx qemu still has issues which cause some
   of the unexpected failures (e.g. about tgkill in tilegx qemu).

 - I am almost sure that, the environments configuration still have
   issues (e.g. libstdc++ configuation, and gdb configuration).

 - tilegx binutils maybe have issues, too (ld sometimes prints issues).
   and tilegx gcc must have issues, I should try to fix them (so I can
   continue tilegx qemu, or I can not prove they are not qemu's issue).

And excuse me, could your provide more details about "PRs", I don't know
anythings about it.

For my own idea, next:

 - For qemu: implement qemu tilegx: implement all insns in user mode,
   then implement system mode (I guess, I shall almost spend 1 years for
   it).

 - For Linux kernel: learn mm (memory management), and make patches for
   it (maybe spend 1 years, more or less).

 - For gcc/binutils: just like what I have done: building every archs'
   gcc/binutils/libc, building Linux kernel, run under qemu, then let
   gcc pass testsuite. Fix all related issues which I will meet.


Welcome any ideas, suggestions, and completions.

:-)

Thanks.
-- 
Chen Gang (陈刚)

Open, share, and attitude like air, water, and life which God blessed

 		 	   		  

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2015-10-19 22:45                             ` Chen Gang
@ 2015-10-21 16:40                               ` Mike Stump
       [not found]                                 ` <5628110A.90701@hotmail.com>
  0 siblings, 1 reply; 33+ messages in thread
From: Mike Stump @ 2015-10-21 16:40 UTC (permalink / raw)
  To: Chen Gang; +Cc: gcc-help

On Oct 19, 2015, at 3:45 PM, Chen Gang <xili_gchen_5257@hotmail.com> wrote:
> 
> On 10/20/15 02:26, Mike Stump wrote:
>> On Oct 17, 2015, at 10:23 PM, Chen Gang <xili_gchen_5257@hotmail.com> wrote:
>>> After fix one qemu issue about floating point insns, correct the related
>>> environments (make some symbol links), and reconfig building options (so
>>> support g++), the current gcc testsuite result are:
>>> 
>>>                === gcc Summary ===
>>> 
>>> # of expected passes            78156
>>  
>> Nice.
>>  
> 
> Thanks. :-)
> 
>>> # of unexpected failures        98
>>  
>>> Welcome any ideas, suggestions, and completions.
>>  
>> So, if you would like to do more work, and don’t have any other plans, you could investigate the unexpected failures in the above, if you want.  I hesitate to say this, as the funnest work, is work that you want to do.  I would ask, what would you like to do next?  Other work, if you wanted to try your hand at something, would be to read through the PRs on the gcc web site, and find one that you’d like to fix and fix it.
>>  
> 
> At present, for me, I should continue analyzing the unexpected failures,

Sounds good.

> And excuse me, could your provide more details about "PRs", I don't know
> anythings about it.

These are the official bugs reported  against gcc by users of gcc.  They all go into the Problem Report database (PR for short).  The main page it at:

  https://gcc.gnu.org/bugzilla/

and that is a front end for the database.  The database is composed of entries that are numbered, and to get at an entry, in case you want to see one:

  https://gcc.gnu.org/PR17234

will show you entry 17234, which we refer to as PR17234.  This one details a bug with if conversion.  One can search the database for what ever one would like.

> Welcome any ideas, suggestions, and completions.

Your plans sound wonderful, thanks for all the work.  As you find patches to fix things, be sure to send them in.

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
       [not found]                                 ` <5628110A.90701@hotmail.com>
@ 2015-10-21 22:25                                   ` Chen Gang
  0 siblings, 0 replies; 33+ messages in thread
From: Chen Gang @ 2015-10-21 22:25 UTC (permalink / raw)
  To: Mike Stump; +Cc: gcc-help

On 10/22/15 00:40, Mike Stump wrote:
> On Oct 19, 2015, at 3:45 PM, Chen Gang <xili_gchen_5257@hotmail.com> wrote:
>>
>> At present, for me, I should continue analyzing the unexpected failures,
>
> Sounds good.
>

Thanks.

>> And excuse me, could your provide more details about "PRs", I don't know
>> anythings about it.
>
> These are the official bugs reported against gcc by users of gcc. They all go into the Problem Report database (PR for short). The main page it at:
>
> https://gcc.gnu.org/bugzilla/
>
> and that is a front end for the database. The database is composed of entries that are numbered, and to get at an entry, in case you want to see one:
>
> https://gcc.gnu.org/PR17234
>
> will show you entry 17234, which we refer to as PR17234. This one details a bug with if conversion. One can search the database for what ever one would like.
>

OK, thanks. I shall try some of them when I have another free time
resources (I guess, I should have).

>> Welcome any ideas, suggestions, and completions.
>
> Your plans sound wonderful, thanks for all the work. As you find patches to fix things, be sure to send them in.
>

Thank you for your encourage. :-)

Open source (include GNU) have done much contributions to the world, I
of cause, have get much benefit from open source. So when I have free
time resources, I shall contribute back to open source, too.

I really want to work for open source with the whole time, but life is
not easy, it looks that it is not easy for me to find the related job
position, so I have to do it only in my free time resources.


Thanks.
--
Chen Gang (陈刚)

Open, share, and attitude like air, water, and life which God blessed
 		 	   		  

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
       [not found]                       ` <56232CE1.6050405@hotmail.com>
@ 2015-11-30 13:55                         ` Chen Gang
       [not found]                         ` <565C55D3.1060608@hotmail.com>
  1 sibling, 0 replies; 33+ messages in thread
From: Chen Gang @ 2015-11-30 13:55 UTC (permalink / raw)
  To: Chris Metcalf, walt
  Cc: Jeff Law, gcc-help, Mike Stump, Richard Henderson, Peter Maydell,
	Andreas Färber, rth

Hello all:

This month, I rewrite floating point instructions implementation, and
send related patches to qemu members (it was really not easy to me, it
spent me much free time resources).

At present, current gcc summary is below (a little better than before).

                  === gcc Summary ===
  
  # of expected passes            78530
  # of unexpected failures        84
  # of unexpected successes       1
  # of expected failures          121
  # of unresolved testcases       2
  # of unsupported tests          1391

I am just analyzing and fixing one issue, it looks like a gcc's issue.
It is about __builtin_mul_overflow(). After comparing with the x86_64
output, tilegx should only check the lower 32 bits:

  objdump for tilegx:

        if (__builtin_mul_overflow (x, y, &r))
   10918:       180ee685d1483000        { addi r11, r52, -36 }
   10920:       180ec68651483000        { addi r12, r52, -40 }
   10928:       180807e6d1483000        { movei r13, 0 }
   10930:       9c76400034cc3000        { ld4s r14, r12 }
   10938:       9c56400034bc3000        { ld4s r10, r11 }
   10940:       286a300050f0a38a        { mul_ls_ls r10, r14, r10 }

   10948:       3009014751483000        { shrsi r14, r10, 32 }
   10950:       3008f947d1483000        { shrsi r15, r10, 31 }
   10958:       280a71e751483000        { cmpeq r14, r15, r14 }

   10960:       17c001c151483000        { bnez r14, 10970 <t115_1mul+0xc0> }
   10968:       18080fe6d1483000        { movei r13, 1 }

   10970:       9c76400034bc3000        { ld4s r14, r11 }
   10978:       14c001c5d1483000        { bgez r14, 109d0 <t115_1mul+0x120> }

   10980:       18080fe6d1483000        { movei r13, 1 }
   10988:       9c76400034cc3000        { ld4s r14, r12 }
   10990:       144001c3d1483000        { beqz r14, 109c8 <t115_1mul+0x118> }

   10998:       9c66400034cc3000        { ld4s r12, r12 }
   109a0:       1827f98651483000        { cmpeqi r12, r12, -1 }
   109a8:       14400182d1483000        { beqz r12, 109d0 <t115_1mul+0x120> }

   /* It should only check the lower 32 bits, but it checks 64 bits */
   109b0:       9c5e400034bc3000        { ld4s r11, r11 } /* ld4u instead of */
   /* need "and r10, r10 0xffffffff" */
   109b8:       280a5165d1483000        { cmpeq r11, r11, r10 } 
   109c0:       1440016151483000        { beqz r11, 109d0 <t115_1mul+0x120> }

   109c8:       180807e6d1483000        { movei r13, 0 }

   109d0:       283bf945d1483000        { move r11, r10 }
   ...


  objdump for x86_64:

        if (__builtin_mul_overflow (x, y, &r))
  400662:       ba 00 00 00 00          mov    $0x0,%edx
  400667:       8b 45 e8                mov    -0x18(%rbp),%eax
  40066a:       0f af 45 ec             imul   -0x14(%rbp),%eax
  40066e:       71 05                   jno    400675 <t115_1mul+0x1d>
  400670:       ba 01 00 00 00          mov    $0x1,%edx

  400675:       83 7d ec 00             cmpl   $0x0,-0x14(%rbp)
  400679:       79 1b                   jns    400696 <t115_1mul+0x3e>

  40067b:       ba 01 00 00 00          mov    $0x1,%edx
  400680:       83 7d e8 00             cmpl   $0x0,-0x18(%rbp)
  400684:       74 0b                   je     400691 <t115_1mul+0x39>

  400686:       83 7d e8 ff             cmpl   $0xffffffff,-0x18(%rbp)
  40068a:       75 0a                   jne    400696 <t115_1mul+0x3e>

  /* it only checks the lower 32 bits */
  40068c:       39 45 ec                cmp    %eax,-0x14(%rbp)
  40068f:       75 05                   jne    400696 <t115_1mul+0x3e>

  400691:       ba 00 00 00 00          mov    $0x0,%edx

  400696:       89 45 fc                mov    %eax,-0x4(%rbp)
  400699:       89 d0                   mov    %edx,%eax
  ...


Thanks.

On 10/18/15 13:23, Chen Gang wrote:
> Hello all:
> 
> After fix one qemu issue about floating point insns, correct the related
> environments (make some symbol links), and reconfig building options (so
> support g++), the current gcc testsuite result are:
> 
>                 === gcc Summary ===
> 
> # of expected passes            78156
> # of unexpected failures        98
> # of unexpected successes       1
> # of expected failures          120
> # of unresolved testcases       1
> # of unsupported tests          1384
> 
>                 === g++ Summary ===
> 
> # of expected passes            83999
> # of unexpected failures        78
> # of unexpected successes       2
> # of expected failures          277
> # of unsupported tests          3568
> 
> [root@localhost build-gcc-tile]# gcc/xgcc -v
> Using built-in specs.
> COLLECT_GCC=gcc/xgcc
> Target: tilegx-gchen-linux
> Configured with: ../gcc/configure --target=tilegx-gchen-linux --disable-nls --enable-languages=c,c++ --enable-threads --enable-shared --enable-libssp --prefix=/upstream/release-tile --with-headers=/upstream/release-tile/include --with-sysroot=/upstream/release-tile --disable-multilib --disable-libquadmath --disable-libgomp --disable-libatomic
> Thread model: posix
> gcc version 6.0.0 20151012 (experimental) (GCC) 
> [root@localhost build-gcc-tile]# gcc/xg++ -v
> Using built-in specs.
> COLLECT_GCC=gcc/xg++
> Target: tilegx-gchen-linux
> Configured with: ../gcc/configure --target=tilegx-gchen-linux --disable-nls --enable-languages=c,c++ --enable-threads --enable-shared --enable-libssp --prefix=/upstream/release-tile --with-headers=/upstream/release-tile/include --with-sysroot=/upstream/release-tile --disable-multilib --disable-libquadmath --disable-libgomp --disable-libatomic
> Thread model: posix
> gcc version 6.0.0 20151012 (experimental) (GCC)
> 
> 
> 
> Welcome any ideas, suggestions, and completions.
> 
> Thanks.
> 
> 
> On 10/17/15 14:39, Chen Gang wrote:
>>
>> After rebuild gcc/binutils with the latest code and correct the building
>> config parameters, the gcc testsuite result is:
>>
>>                 === gcc Summary ===
>>
>> # of expected passes            77855
>> # of unexpected failures        162
>> # of unexpected successes       1
>> # of expected failures          120
>> # of unresolved testcases       131
>> # of unsupported tests          1477
>>
>> root@localhost tile]# /upstream/release-tile/bin/tilegx-gchen-linux-gcc -v
>> Using built-in specs.
>> COLLECT_GCC=/upstream/release-tile/bin/tilegx-gchen-linux-gcc
>> COLLECT_LTO_WRAPPER=/upstream/release-tile/libexec/gcc/tilegx-gchen-linux/6.0.0/lto-wrapper
>> Target: tilegx-gchen-linux
>> Configured with: ../gcc/configure --target=tilegx-gchen-linux --disable-nls --enable-languages=c --enable-threads --enable-shared --enable-libssp --prefix=/upstream/release-tile --with-headers=/upstream/release-tile/include --with-sysroot=/upstream/release-tile --disable-multilib
>> Thread model: posix
>> gcc version 6.0.0 20151012 (experimental) (GCC) 
>>
>> Welcome any members' ideas, suggestions, and completions.
>>
>>
>> Thanks.
>>
>>
>> On 10/5/15 19:59, Chen Gang wrote:
>>> After fix the tillegx qemu's fsingle floating point insns issue, the gcc test suite result is:
>>>
>>> 		=== gcc Summary ===
>>>
>>> # of expected passes		77272
>>> # of unexpected failures	365
>>> # of unexpected successes	7
>>> # of expected failures		113
>>> # of unresolved testcases	141
>>> # of unsupported tests		1476
>>>
>>> And I shall continue to analyze the left issues, next. :-)
>>>
>>>
>>> Thanks.
>>> --
>>> Chen Gang
>>>
>>> Open, share, and attitude like air, water, and life which God blessed
>>>
>>>
>>> ----------------------------------------
>>>> From: xili_gchen_5257@hotmail.com
>>>> To: cmetcalf@ezchip.com; walt@tilera.com
>>>> CC: law@redhat.com; gcc-help@gcc.gnu.org; mikestump@comcast.net; eager@eagerm.com; rth@redhat.com; peter.maydell@linaro.org; afaerber@suse.de; rth@twiddle.net
>>>> Subject: RE: [Consult] tile: How to construct testsuite for tile architecture without hardware.
>>>> Date: Sun, 4 Oct 2015 19:55:44 +0800
>>>>
>>>> After finish additional 7 qemu patches, our tilegx qemu can test the gcc
>>>> testsuite successfully (no any unimplementation issues). The test result
>>>> is:
>>>>
>>>> === gcc Summary ===
>>>>
>>>> # of expected passes 77012
>>>> # of unexpected failures 622
>>>> # of unexpected successes 7
>>>> # of expected failures 113
>>>> # of unresolved testcases 143
>>>> # of unsupported tests 1476
>>>>
>>>>
>>>> For the 622 left issues:
>>>>
>>>> - Maybe still tilegx implementation issue, e.g.
>>>>
>>>> the floating point single mul instruction cann't get the result which
>>>> tilegx gcc expected (it is only related with calculating: float32_mul
>>>> calculation result is not match tilegx gcc expected).
>>>>
>>>> - Maybe envorintments configuration issues, e.g.
>>>>
>>>> for gcc guality_check, it may call gdb outside, so I need config the
>>>> related gdb correctlly.
>>>>
>>>> - Maybe tilegx gcc issues, e.g.
>>>>
>>>> for some UNKNOWN instructions, probably generated by incorrect jump
>>>> instructions, one sample is "-fpic -mcmodel=large" for gcc nested-5
>>>> test.
>>>>
>>>> Next, I shall:
>>>>
>>>> - continue to fix the left 622 issues, and send related patches to
>>>> qemu-devel mailing list or gcc-patches mailing list.
>>>>
>>>> - then rewrite floating point instructions, and try to let the related
>>>> code merged into qemu mainline with qemu members' help (at present,
>>>> floating point implementation is a temporary implementation).
>>>>
>>>> - at last, try to finish all left unimplemented instructions (there are
>>>> still some unimplement insns left, but at present, gcc testsuite does
>>>> not use them), and start tilegx qemu system mode, next.
>>>>
>>>>
>>>> Welcome any members' ideas, suggestion, and completions. :-)
>>>>
>>>>
>>>> Thanks.
>>>>
>>>> Chen Gang
>>>>
>>>> Open, share, and attitude like air, water, and life which God blessed
>>>>
>>>>
>>>> ----------------------------------------
>>>>> Date: Thu, 1 Oct 2015 12:12:48 +0800
>>>>> From: xili_gchen_5257@hotmail.com
>>>>> To: cmetcalf@ezchip.com; walt@tilera.com
>>>>> CC: law@redhat.com; gcc-help@gcc.gnu.org; mikestump@comcast.net; eager@eagerm.com; rth@redhat.com; peter.maydell@linaro.org; afaerber@suse.de; rth@twiddle.net
>>>>> Subject: Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
>>>>>
>>>>>
>>>>> At present, tilegx is integrated into qemu master branch successfully
>>>>> with the much help by qemu members.
>>>>>
>>>>> But sorry, I did not finish gcc testsuite in time, the main excuse is
>>>>>
>>>>> - I am busy on the normal work -- sometimes, have to do overtime work.
>>>>> (my company started up an urgent project, but couldn't find suitable
>>>>> persons for it in short time, so I have to do it during these days).
>>>>>
>>>>> Next, in Chinese National Day, I have enough free time resources on open
>>>>> source, hope I finish our gcc testsuite within Chinese National Day (it
>>>>> is from 2015-10-01 -- 2015-10-07).
>>>>>
>>>>> Thanks.
>>>>>
>>>>> On 8/30/15 11:50, Chen Gang wrote:
>>>>>>
>>>>>> Oh, sorry again, I did not finish qemu test within this month, again.
>>>>>> Current status is:
>>>>>>
>>>>>> === gcc Summary ===
>>>>>>
>>>>>> # of expected passes 76725
>>>>>> # of unexpected failures 790
>>>>>> # of unexpected successes 7
>>>>>> # of expected failures 113
>>>>>> # of unresolved testcases 142
>>>>>> # of unsupported tests 1483
>>>>>>
>>>>>>
>>>>>> My main excuses are:
>>>>>>
>>>>>> - We are lack of tilegx floating point insns related documents, we have
>>>>>> to 'guess' implementation details. At last, we found ways to process
>>>>>> it (we spent more than a half month free time resources for it).
>>>>>>
>>>>>> - My related qemu code need be refactor before merging into qemu master
>>>>>> tree. At present, we are refactoring and merging tilegx code to qemu
>>>>>> master tree (mainly by qemu related members).
>>>>>>
>>>>>> Hope I can finish qemu tilegx gcc testsuite within next month (I guess,
>>>>>> it should be done in time).
>>>>>>
>>>>>> - Test the refactored and merged code again, based on it, I continue to
>>>>>> fix gcc testsuite related issues.
>>>>>>
>>>>>> - Fix all 700+ gcc testsuite issues (10+ for pending issues, and the
>>>>>> others are for UN-implementation insns issues, I guess).
>>>>>>
>>>>>>
>>>>>> Thanks.
>>>>>>
>>>>>>
>>>>>> On 7/30/15 05:01, Chen Gang wrote:
>>>>>>> On 7/20/15 06:26, Chen Gang wrote:
>>>>>>>> Hello all:
>>>>>>>>
>>>>>>>> At present (after a half year), with the much help of QEMU members,
>>>>>>>> tilegx linux-user can work (manually using busybox's sh, ls, cp, mv, vi
>>>>>>>> are OK).
>>>>>>>>
>>>>>>>> Next, I shall start gcc testsuite with qemu tilegx linux-user, hope I
>>>>>>>> can finish within this month (2015-07-31).
>>>>>>>>
>>>>>>>
>>>>>>> Sorry, I can not finish the qemu test within this month. The reason is
>>>>>>> my tilegx qemu is still lack of some instructions implementation, next,
>>>>>>> I should finish them firstly (I implemented most insns, but not all).
>>>>>>>
>>>>>>> === gcc Summary ===
>>>>>>>
>>>>>>> # of expected passes 69830
>>>>>>> # of unexpected failures 4312
>>>>>>> # of unexpected successes 2
>>>>>>> # of expected failures 108
>>>>>>> # of unresolved testcases 1776
>>>>>>> # of unsupported tests 1567
>>>>>>>
>>>>>>> More than 4K failures are because tilegx qemu lacks of instruction's
>>>>>>> implementation, and also more than 10 issues are for TIMEOUT (I guess,
>>>>>>> my original tilegx qemu instruction's implementation still has bugs).
>>>>>>>
>>>>>>> I shall try to finish it within next month, although I am not quite sure
>>>>>>> (it needs enough time resources on it, but I am lack of time resources:
>>>>>>> I can only spend less 1 hour per work day and 2 hours per week end day).
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Thanks.
>>>>>>>
>>>>>>>> Thanks.
>>>>>>>>
>>>>>>>> On 1/24/15 21:31, Chen Gang S wrote:
>>>>>>>>> Hello Maintainers:
>>>>>>>>>
>>>>>>>>> The result of gcc testsuite for tile without qemu is below, I guess the
>>>>>>>>> environments construction is OK:
>>>>>>>>>
>>>>>>>>> === gcc Summary ===
>>>>>>>>>
>>>>>>>>> # of expected passes 66650
>>>>>>>>> # of unexpected failures 42
>>>>>>>>> # of unexpected successes 1
>>>>>>>>> # of expected failures 107
>>>>>>>>> # of unresolved testcases 16558
>>>>>>>>> # of unsupported tests 1771
>>>>>>>>>
>>>>>>>>> Based on normal testsuite and microblaze testsuite configuration, it is
>>>>>>>>> easy to config gcc testsuite for tile. Thank gcc testsuit member and
>>>>>>>>> microblaze member very much. :-)
>>>>>>>>>
>>>>>>>>> - Copy the original microblaze exp file as tile exp file. Export tile
>>>>>>>>> ip to /etc/hosts.
>>>>>>>>>
>>>>>>>>> - Change the related compiler name and related patch to tile in tile
>>>>>>>>> exp file.
>>>>>>>>>
>>>>>>>>> - Use tile cflag "-m64 -mcpu=tilegx -mcmodel=large -mlittle-endian"
>>>>>>>>> instead of the original microblaze cflag, in tile exp file.
>>>>>>>>>
>>>>>>>>> If OK, I shall try to make a tile patch within this month. Next month,
>>>>>>>>> I shall start tile qemu (I am preparing for it within this month). After
>>>>>>>>> communicate with qemu members, I guess, it is possible to finish it.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Welcome any ideas, suggestions, and completions.
>>>>>>>>>
>>>>>>>>> Thanks.
>>>>>>>>>
>>>>>>>>> On 1/20/15 10:02, Chen Gang S wrote:
>>>>>>>>>> On 1/20/15 00:10, Chris Metcalf wrote:
>>>>>>>>>>> On 1/17/2015 4:52 AM, Chen Gang S wrote:
>>>>>>>>>>>> Hello Maintainers:
>>>>>>>>>>>>
>>>>>>>>>>>> I am trying to make gcc patches for tile, and need testsuite without
>>>>>>>>>>>> related hardware, so I consult:
>>>>>>>>>>>
>>>>>>>>>>> Unfortunately, at the current time, the simulator is only available as part of the commercial Multicore Development Environment package. A qemu port for tile hardware would certainly be welcome, but to my knowledge, no one has completed such a port yet. ISA and ABI documentation for tilegx are available at www.tilera.com/scm.
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> OK, thank you very much, and the documentation is really valuable to me.
>>>>>>>>>>
>>>>>>>>>> After finish gcc tile testsuite (hope I can finish within this month),
>>>>>>>>>> I shall continue for tile qemu, I should try my best for it, hope I can
>>>>>>>>>> finish: "can run gcc testsuite with the tile qemu".
>>>>>>>>>>
>>>>>>>>>> At present, it is really very hard to me, but for me, it is my duty (I
>>>>>>>>>> met it, and it was within my original boarder).
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> For me, nothing is impossible, if God blessed.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Thanks.
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>> Thanks.
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>> --
>>>>>> Chen Gang
>>>>>>
>>>>>> Open, share, and attitude like air, water, and life which God blessed
>>>>>>
>>>>>>
>>>>>
>>>>> --
>>>>> Chen Gang (陈刚)
>>>>>
>>>>> Open, share, and attitude like air, water, and life which God blessed
>>>>
>>>  		 	   		  
>>>
>>
> 

-- 
Chen Gang (陈刚)

Open, share, and attitude like air, water, and life which God blessed

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
       [not found]                         ` <565C55D3.1060608@hotmail.com>
@ 2016-03-06  0:06                           ` Chen Gang
  2016-03-13 10:34                             ` Chen Gang
  0 siblings, 1 reply; 33+ messages in thread
From: Chen Gang @ 2016-03-06  0:06 UTC (permalink / raw)
  To: Chris Metcalf, walt
  Cc: Jeff Law, gcc-help, Mike Stump, Richard Henderson, Peter Maydell,
	Andreas Färber, rth

Hello all:

Sorry for disappearing several months, the reasons (excuses) are:

 - During these days, I am a little busy (although it is not a quite
   good excuse).

 - China Spring Festival (it maybe be a reason/excuse).

 - I blocked at cleanup-10.exe failure issue (build gcc/testsuite/gcc.dg
   /cleanup-10.c). I guess, this issue isn't quit complex to me, but it
   needs quite a few of my free time resources (e.g. several months) :-(

At present, I let my tile qemu almost be a crashdump: dump full working
flow (all insns and regs - 2G file, 34M lines), dump simple working flow
(all insns - 82M file, 2M lines). check them with objdump and src code.

I shall continue for it (for cleanup-10.exe issue firstly), and welcome
any ideas, suggestions, and completions by any members.

Thanks.
-- 
Chen Gang (陈刚)

Managing Natural Environments is the Duty of Human Beings.

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2016-03-06  0:06                           ` Chen Gang
@ 2016-03-13 10:34                             ` Chen Gang
  2016-05-29  7:36                               ` Chen Gang
  0 siblings, 1 reply; 33+ messages in thread
From: Chen Gang @ 2016-03-13 10:34 UTC (permalink / raw)
  To: Chris Metcalf, walt
  Cc: Jeff Law, gcc-help, Mike Stump, Richard Henderson, Peter Maydell,
	Andreas Färber, rth


After tried, I guess, I have found the root cause, this issue is about
tilegx qemu linux-user in setup_rt_frame() in linux-user/signal.c:

 - When there is no ka->sa_restorer in setup_rt_frame(), I should make
   the related opcode in guest space (about TARGET_NR_rt_sigreturn),
   should not directly use do_rt_sigreturn() from host space.

 - Then when cleanup-10.exe catch the failure, the lr register will get
   the opcode address for TARGET_NR_rt_sigreturn. After several normal
   successful rewind, cleanup-10.exe will call this address.

 - But my implementation let the related address is do_rt_sigreturn
   which is in host space (an invalid address for cleanup-10.exe), then
   cause the rewind failure.

It really spends me much free time resources, I almost make a qemu as a
debugger!! I guess, I shall add some necessary debug features in tile
qemu (just like the other targets have done). Welcome any suggestions!


Thanks.

On 3/6/16 08:09, Chen Gang wrote:
> Hello all:
> 
> Sorry for disappearing several months, the reasons (excuses) are:
> 
>  - During these days, I am a little busy (although it is not a quite
>    good excuse).
> 
>  - China Spring Festival (it maybe be a reason/excuse).
> 
>  - I blocked at cleanup-10.exe failure issue (build gcc/testsuite/gcc.dg
>    /cleanup-10.c). I guess, this issue isn't quit complex to me, but it
>    needs quite a few of my free time resources (e.g. several months) :-(
> 
> At present, I let my tile qemu almost be a crashdump: dump full working
> flow (all insns and regs - 2G file, 34M lines), dump simple working flow
> (all insns - 82M file, 2M lines). check them with objdump and src code.
> 
> I shall continue for it (for cleanup-10.exe issue firstly), and welcome
> any ideas, suggestions, and completions by any members.
> 
> Thanks.
> 

-- 
Chen Gang (陈刚)

Managing Natural Environments is the Duty of Human Beings.

^ permalink raw reply	[flat|nested] 33+ messages in thread

* Re: [Consult] tile: How to construct testsuite for tile architecture without hardware.
  2016-03-13 10:34                             ` Chen Gang
@ 2016-05-29  7:36                               ` Chen Gang
  0 siblings, 0 replies; 33+ messages in thread
From: Chen Gang @ 2016-05-29  7:36 UTC (permalink / raw)
  To: Chris Metcalf, walt
  Cc: Jeff Law, gcc-help, Mike Stump, Richard Henderson, Peter Maydell,
	Andreas Färber, rth

Hello all:

After test from the qemu, I found a tilegx gcc issue, and file Bug71331
"target-tilegx: nested-function-4.c: r10 is conflict which is both in
function frame and in parameter." The related link:

  https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71331

And I shall try to fix it within next month.

Welcome any ideas, suggestions, and completions.


Thanks.
-- 
Chen Gang (陈刚)

Managing Natural Environments is the Duty of Human Beings.

^ permalink raw reply	[flat|nested] 33+ messages in thread

end of thread, other threads:[~2016-05-29  7:36 UTC | newest]

Thread overview: 33+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-01-17  9:45 [Consult] tile: How to construct testsuite for tile architecture without hardware Chen Gang S
2015-01-17 17:04 ` Mike Stump
2015-01-17 23:32   ` Chen Gang S
2015-01-19 16:10 ` Chris Metcalf
2015-01-20  1:54   ` Chen Gang S
2015-01-24 13:24     ` Chen Gang S
2015-01-30 22:50       ` Chen Gang S
2015-01-30 23:01         ` Mike Stump
2015-01-31  5:45           ` Chen Gang S
2015-01-31 11:17             ` Chen Gang S
2015-01-31 19:44               ` Mike Stump
2015-02-01  0:20                 ` Chen Gang S
2015-02-03 14:20                 ` Chen Gang S
2015-02-03 14:28                   ` Chen Gang S
2015-02-03 17:24                   ` Mike Stump
2015-02-03 23:00                     ` Chen Gang S
2015-07-19 22:25       ` Chen Gang
2015-07-29 21:00         ` Chen Gang
     [not found]           ` <55E27DB9.6050606@hotmail.com>
2015-08-30  3:50             ` Chen Gang
2015-10-01  4:10               ` Chen Gang
     [not found]               ` <560CB2C0.7000107@hotmail.com>
2015-10-04 11:55                 ` Chen Gang
2015-10-05 11:59                   ` Chen Gang
2015-10-17  6:37                     ` Chen Gang
2015-10-18  5:22                       ` Chen Gang
2015-10-18  5:42                         ` john.frankish
2015-10-19 18:27                         ` Mike Stump
     [not found]                           ` <562572E2.6020308@hotmail.com>
2015-10-19 22:45                             ` Chen Gang
2015-10-21 16:40                               ` Mike Stump
     [not found]                                 ` <5628110A.90701@hotmail.com>
2015-10-21 22:25                                   ` Chen Gang
     [not found]                       ` <56232CE1.6050405@hotmail.com>
2015-11-30 13:55                         ` Chen Gang
     [not found]                         ` <565C55D3.1060608@hotmail.com>
2016-03-06  0:06                           ` Chen Gang
2016-03-13 10:34                             ` Chen Gang
2016-05-29  7:36                               ` Chen Gang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).