Re: [COMMITTED][AArch64] Improve TLS Descriptor pattern to release RTL loop IV opt

2015-08-11 Thread Jiong Wang

Andreas Schwab writes:

 Jiong Wang jiong.w...@arm.com writes:

   I Just finished several round of rebuild  testing on clean
   environment.

 How did you even manage to compile it?

 ../../gcc/ira.c: In function 'void print_translated_classes(FILE*, bool)':
 ../../gcc/ira.c:1415:49: error: iteration 8u invokes undefined behavior 
 [-Werror=aggressive-loop-optimizations]
  fprintf (f,  %s - %s\n, reg_class_names[i],
  ^
 ../../gcc/ira.c:1414:17: note: containing loop
for (i = 0; i  N_REG_CLASSES; i++)

And, my new patch missed a ',' after FIXED_REG0, sorry about
that.. that should be the problem for the bootstrap issue.



 Andreas.

-- 
Regards,
Jiong



Re: [COMMITTED][AArch64] Improve TLS Descriptor pattern to release RTL loop IV opt

2015-08-11 Thread Jiong Wang

Andreas Schwab writes:

 Jiong Wang jiong.w...@arm.com writes:

   I Just finished several round of rebuild  testing on clean
   environment.

 How did you even manage to compile it?

 ../../gcc/ira.c: In function 'void print_translated_classes(FILE*, bool)':
 ../../gcc/ira.c:1415:49: error: iteration 8u invokes undefined behavior 
 [-Werror=aggressive-loop-optimizations]
  fprintf (f,  %s - %s\n, reg_class_names[i],
  ^
 ../../gcc/ira.c:1414:17: note: containing loop
for (i = 0; i  N_REG_CLASSES; i++)
  ^

 Andreas.

What I have done on a clean environment:

  1. checkout e5c427f3245ff69d8b014d4ff170715962178151 which might be
  the commit cause the trouble.

 mkdir build-dir1

 configure/build/check-go in build-dir1
 (configuation options --enable-languages=c,c++,fortran,go
 --prefix=/home/jiowan01/COMMUNITY/install-gcc-native-reference
 --disable-bootstrap)

 and I do see lots of go failures.
 
  2. checkout the one commit before this wrong commit.

 re-done everything in a new build-dir2

 check-go OK

  3. applied my new tlsdesc patch

 re-done everything in a new build-dir3
 check-go OK

  4. checkout

 commit 8b221598008f60621859caee561e8466e80049f7
 Author: jiwang jiwang@138bc75d-0d04-0410-961f-82ee72b054a4
 Date:   Mon Aug 10 10:06:28 2015 +

[AArch64] Recommit correct version for improving TLS descriptor
pattern

re-done everything in a new build-dir4
check-go OK


  my host gcc is gcc version 4.8.2 (Ubuntu/Linaro 4.8.2-19ubuntu1), I
  guess you have enabled bootstrap.
-- 
Regards,
Jiong



Re: [COMMITTED][AArch64] Improve TLS Descriptor pattern to release RTL loop IV opt

2015-08-11 Thread Andreas Schwab
Jiong Wang jiong.w...@arm.com writes:

   I Just finished several round of rebuild  testing on clean
   environment.

How did you even manage to compile it?

../../gcc/ira.c: In function 'void print_translated_classes(FILE*, bool)':
../../gcc/ira.c:1415:49: error: iteration 8u invokes undefined behavior 
[-Werror=aggressive-loop-optimizations]
 fprintf (f,  %s - %s\n, reg_class_names[i],
 ^
../../gcc/ira.c:1414:17: note: containing loop
   for (i = 0; i  N_REG_CLASSES; i++)
 ^

Andreas.

-- 
Andreas Schwab, sch...@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
And now for something completely different.


Re: [COMMITTED][AArch64] Improve TLS Descriptor pattern to release RTL loop IV opt

2015-08-10 Thread Jiong Wang

Andreas Schwab writes:

 Jiong Wang jiong.w...@arm.com writes:

 Andreas Schwab writes:

 Jiong Wang jiong.w...@arm.com writes:

 And I just finished two round of native aarch64 build/check w/wo my patch.

 Did you rebuild everything?

 No.

 Please do.

Andreas,

  I Just finished several round of rebuild  testing on clean
  environment.

  The problem should have gone away after my new tlsdesc patch.  

  While I do have seen lots of failures with my old tlsdesc patch.

  Please let me know if you still have problem on this after my patch
  correction.
  
  Thanks.
  
-- 
Regards,
Jiong



Re: [COMMITTED][AArch64] Improve TLS Descriptor pattern to release RTL loop IV opt

2015-08-10 Thread Jiong Wang

Jiong Wang writes:

 Andreas Schwab writes:

 Jiong Wang jiong.w...@arm.com writes:

 Index: gcc/ChangeLog
 ===
 --- gcc/ChangeLog   (revision 226682)
 +++ gcc/ChangeLog   (working copy)
 @@ -1,3 +1,16 @@
 +2015-08-06Ramana Radhakrishnan  ramana.radhakrish...@arm.com
 + Jiong Wang  jiong.w...@arm.com
 +
 +   * config/aarch64/aarch64.d (tlsdesc_small_pseudo_mode): New pattern.
 +   * config/aarch64/aarch64.h (reg_class): New enumeration FIXED_REG0.
 +   (REG_CLASS_NAMES): Likewise.
 +   (REG_CLASS_CONTENTS): Likewise.
 +   * config/aarch64/aarch64.c (aarch64_class_max_nregs): Likewise.
 +   (aarch64_register_move_cost): Likewise.
 +   (aarch64_load_symref_appropriately): Invoke the new added pattern if
 +   possible.
 +   * config/aarch64/constraints.md (Uc0): New constraint.

 That breaks go, all tests are crashing now.

 Andreas,

   Thanks for the information.

   * I found I committed the wrong patch!
 there are two patches in my local directory, one is
 tlsdesc_hoist.patch the other is tlsdesc-hoist.patch, the one
 approved and up-to-date is tlsdesc-hoist.patch while I committed
 tlsdesc_hoist.patch.
 
 Reverted the wrong commit and committed the correct/approved
 version.

   * Even after the correct patch applied, I still found go check failed
 on my local native check.

 Tring to understand why and if I can't figure out today I will
 revert the patch.

And I just finished two round of native aarch64 build/check w/wo my patch.

I got the same go.sum.

And my patch only touches one tls descriptor pattern which will only be
used if there is tls variable. So I suspect the go test regressions are
not caused by my patch.

Andreas, can you please double confirm this?

Thanks

-- 
Regards,
Jiong



Re: [COMMITTED][AArch64] Improve TLS Descriptor pattern to release RTL loop IV opt

2015-08-10 Thread Jiong Wang

Andreas Schwab writes:

 Jiong Wang jiong.w...@arm.com writes:

 Index: gcc/ChangeLog
 ===
 --- gcc/ChangeLog(revision 226682)
 +++ gcc/ChangeLog(working copy)
 @@ -1,3 +1,16 @@
 +2015-08-06Ramana Radhakrishnan  ramana.radhakrish...@arm.com
 +  Jiong Wang  jiong.w...@arm.com
 +
 +* config/aarch64/aarch64.d (tlsdesc_small_pseudo_mode): New pattern.
 +* config/aarch64/aarch64.h (reg_class): New enumeration FIXED_REG0.
 +(REG_CLASS_NAMES): Likewise.
 +(REG_CLASS_CONTENTS): Likewise.
 +* config/aarch64/aarch64.c (aarch64_class_max_nregs): Likewise.
 +(aarch64_register_move_cost): Likewise.
 +(aarch64_load_symref_appropriately): Invoke the new added pattern if
 +possible.
 +* config/aarch64/constraints.md (Uc0): New constraint.

 That breaks go, all tests are crashing now.

Andreas,

  Thanks for the information.

  * I found I committed the wrong patch!
there are two patches in my local directory, one is
tlsdesc_hoist.patch the other is tlsdesc-hoist.patch, the one
approved and up-to-date is tlsdesc-hoist.patch while I committed
tlsdesc_hoist.patch.

Reverted the wrong commit and committed the correct/approved
version.

  * Even after the correct patch applied, I still found go check failed
on my local native check.

Tring to understand why and if I can't figure out today I will
revert the patch.

  Sorry about the trouble!
-- 
Regards,
Jiong



Re: [COMMITTED][AArch64] Improve TLS Descriptor pattern to release RTL loop IV opt

2015-08-10 Thread Andreas Schwab
Jiong Wang jiong.w...@arm.com writes:

 And I just finished two round of native aarch64 build/check w/wo my patch.

Did you rebuild everything?

Andreas.

-- 
Andreas Schwab, sch...@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
And now for something completely different.


Re: [COMMITTED][AArch64] Improve TLS Descriptor pattern to release RTL loop IV opt

2015-08-10 Thread Jiong Wang

Andreas Schwab writes:

 Jiong Wang jiong.w...@arm.com writes:

 And I just finished two round of native aarch64 build/check w/wo my patch.

 Did you rebuild everything?

No.

Just applied the patch, then make all and re-check


 Andreas.

-- 
Regards,
Jiong



Re: [COMMITTED][AArch64] Improve TLS Descriptor pattern to release RTL loop IV opt

2015-08-10 Thread Andreas Schwab
Jiong Wang jiong.w...@arm.com writes:

 Andreas Schwab writes:

 Jiong Wang jiong.w...@arm.com writes:

 And I just finished two round of native aarch64 build/check w/wo my patch.

 Did you rebuild everything?

 No.

Please do.

Andreas.

-- 
Andreas Schwab, sch...@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
And now for something completely different.


Re: [COMMITTED][AArch64] Improve TLS Descriptor pattern to release RTL loop IV opt

2015-08-08 Thread Andreas Schwab
Jiong Wang jiong.w...@arm.com writes:

 Index: gcc/ChangeLog
 ===
 --- gcc/ChangeLog (revision 226682)
 +++ gcc/ChangeLog (working copy)
 @@ -1,3 +1,16 @@
 +2015-08-06Ramana Radhakrishnan  ramana.radhakrish...@arm.com
 +   Jiong Wang  jiong.w...@arm.com
 +
 + * config/aarch64/aarch64.d (tlsdesc_small_pseudo_mode): New pattern.
 + * config/aarch64/aarch64.h (reg_class): New enumeration FIXED_REG0.
 + (REG_CLASS_NAMES): Likewise.
 + (REG_CLASS_CONTENTS): Likewise.
 + * config/aarch64/aarch64.c (aarch64_class_max_nregs): Likewise.
 + (aarch64_register_move_cost): Likewise.
 + (aarch64_load_symref_appropriately): Invoke the new added pattern if
 + possible.
 + * config/aarch64/constraints.md (Uc0): New constraint.

That breaks go, all tests are crashing now.

Andreas.

-- 
Andreas Schwab, sch...@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
And now for something completely different.