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

--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
Zen4 w/ -Ofast -march=znver4:

   5.44%         31188  tonto_base.amd6  tonto_base.amd64-m64-gcc42-nn  [.]
__shell2_module_MOD_make_ft_1                ◆
   5.38%         30694  tonto_peak.amd6  tonto_peak.amd64-m64-gcc42-nn  [.]
__shell2_module_MOD_make_ft_1                ▒
   2.77%         15595  tonto_peak.amd6  libm.so.6                      [.]
__sincos_fma       
   3.32%         18717  tonto_peak.amd6  tonto_peak.amd64-m64-gcc42-nn  [.]
__reflectionvec_module_MOD_indices        
   0.42%          2379  tonto_base.amd6  tonto_base.amd64-m64-gcc42-nn  [.]
__reflectionvec_module_MOD_indices    
   0.85%          4872  tonto_base.amd6  libm.so.6  [.] __sincos_fma            

But perf sucks, it doesn't have proper source locations for me.

effect on loops:

-marchingcube.fppized.f90:1496:12: optimized: epilogue loop vectorized using 16
byte vectors and unroll factor 4
-marchingcube.fppized.f90:1496:12: optimized: epilogue loop vectorized using 16
byte vectors and unroll factor 4

effect on BB vectorization:

-atom.fppized.f90:1427:56: optimized: basic block part vectorized using 16 byte
vectors
-atom.fppized.f90:1429:37: optimized: basic block part vectorized using 16 byte
vectors
-atom.fppized.f90:2620:91: optimized: basic block part vectorized using 16 byte
vectors
-atom.fppized.f90:2620:91: optimized: basic block part vectorized using 16 byte
vectors
-atom.fppized.f90:2645:101: optimized: basic block part vectorized using 16
byte vectors
-atom.fppized.f90:2645:101: optimized: basic block part vectorized using 16
byte vectors
-basis.fppized.f90:650:56: optimized: basic block part vectorized using 16 byte
vectors
-basis.fppized.f90:652:37: optimized: basic block part vectorized using 16 byte
vectors
-binmat.fppized.f90:161:31: optimized: basic block part vectorized using 16
byte vectors
-binmat.fppized.f90:173:37: optimized: basic block part vectorized using 16
byte vectors
-binmat.fppized.f90:173:37: optimized: basic block part vectorized using 16
byte vectors
-binvec.fppized.f90:186:27: optimized: basic block part vectorized using 16
byte vectors
-cluster.fppized.f90:1316:14: optimized: basic block part vectorized using 16
byte vectors
-cluster.fppized.f90:1350:14: optimized: basic block part vectorized using 16
byte vectors
-cluster.fppized.f90:1391:9: optimized: basic block part vectorized using 16
byte vectors
-cluster.fppized.f90:1751:60: optimized: basic block part vectorized using 16
byte vectors
-cluster.fppized.f90:2005:61: optimized: basic block part vectorized using 16
byte vectors
-coppensbasis.fppized.f90:706:56: optimized: basic block part vectorized using
16 byte vectors
-coppensbasis.fppized.f90:708:37: optimized: basic block part vectorized using
16 byte vectors
-coppensorbital.fppized.f90:705:56: optimized: basic block part vectorized
using 16 byte vectors
-coppensorbital.fppized.f90:707:37: optimized: basic block part vectorized
using 16 byte vectors
-cpxmat.fppized.f90:528:31: optimized: basic block part vectorized using 16
byte vectors
-cpxmat.fppized.f90:528:31: optimized: basic block part vectorized using 16
byte vectors
-cpxmat.fppized.f90:528:31: optimized: basic block part vectorized using 16
byte vectors
-cpxmat.fppized.f90:540:37: optimized: basic block part vectorized using 16
byte vectors
-cpxmat3.fppized.f90:136:36: optimized: basic block part vectorized using 16
byte vectors
-cpxmat4.fppized.f90:136:41: optimized: basic block part vectorized using 16
byte vectors
-cpxmat4.fppized.f90:148:53: optimized: basic block part vectorized using 16
byte vectors
-cpxmat4.fppized.f90:148:53: optimized: basic block part vectorized using 16
byte vectors
-cpxmat5.fppized.f90:134:46: optimized: basic block part vectorized using 16
byte vectors
-cpxmat5.fppized.f90:146:61: optimized: basic block part vectorized using 16
byte vectors
-diis.fppized.f90:878:39: optimized: basic block part vectorized using 8 byte
vectors
-diis.fppized.f90:878:39: optimized: basic block part vectorized using 8 byte
vectors
-diis.fppized.f90:878:39: optimized: basic block part vectorized using 8 byte
vectors
-diis.fppized.f90:878:39: optimized: basic block part vectorized using 8 byte
vectors
-diis.fppized.f90:878:39: optimized: basic block part vectorized using 8 byte
vectors
-intmat.fppized.f90:453:31: optimized: basic block part vectorized using 16
byte vectors
-intmat.fppized.f90:465:37: optimized: basic block part vectorized using 16
byte vectors
-intmat.fppized.f90:465:37: optimized: basic block part vectorized using 16
byte vectors
-intmat3.fppized.f90:140:36: optimized: basic block part vectorized using 16
byte vectors
-intvec.fppized.f90:1465:24: optimized: basic block part vectorized using 16
byte vectors
-intvec.fppized.f90:404:27: optimized: basic block part vectorized using 16
byte vectors
-isosurface.fppized.f90:1243:80: optimized: basic block part vectorized using
16 byte vectors
-isosurface.fppized.f90:1246:79: optimized: basic block part vectorized using
16 byte vectors
-isosurface.fppized.f90:1246:79: optimized: basic block part vectorized using
16 byte vectors
-isosurface.fppized.f90:1246:79: optimized: basic block part vectorized using
16 byte vectors
-isosurface.fppized.f90:1246:79: optimized: basic block part vectorized using
16 byte vectors
-isosurface.fppized.f90:1392:84: optimized: basic block part vectorized using
16 byte vectors
-isosurface.fppized.f90:1393:93: optimized: basic block part vectorized using
16 byte vectors
-isosurface.fppized.f90:1394:96: optimized: basic block part vectorized using
16 byte vectors
-isosurface.fppized.f90:1395:104: optimized: basic block part vectorized using
16 byte vectors
-isosurface.fppized.f90:1396:91: optimized: basic block part vectorized using
16 byte vectors
-isosurface.fppized.f90:2188:67: optimized: basic block part vectorized using
16 byte vectors
-isosurface.fppized.f90:2317:43: optimized: basic block part vectorized using
16 byte vectors
-lapack.f90:10846:7: optimized: basic block part vectorized using 16 byte
vectors
-lapack.f90:4618:7: optimized: basic block part vectorized using 16 byte
vectors
-lapack.f90:5115:7: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:11473:51: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:11480:50: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:11482:51: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:12192:92: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:13487:51: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:13487:51: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:13581:63: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:13582:62: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:13583:62: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:13584:61: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:13588:101: optimized: basic block part vectorized using 16
byte vectors
-mol.fppized.f90:13588:101: optimized: basic block part vectorized using 16
byte vectors
-mol.fppized.f90:13588:101: optimized: basic block part vectorized using 16
byte vectors
-mol.fppized.f90:13588:101: optimized: basic block part vectorized using 16
byte vectors
-mol.fppized.f90:13589:101: optimized: basic block part vectorized using 16
byte vectors
-mol.fppized.f90:13589:101: optimized: basic block part vectorized using 16
byte vectors
-mol.fppized.f90:13589:101: optimized: basic block part vectorized using 16
byte vectors
-mol.fppized.f90:13589:101: optimized: basic block part vectorized using 16
byte vectors
-mol.fppized.f90:13590:101: optimized: basic block part vectorized using 16
byte vectors
-mol.fppized.f90:13590:101: optimized: basic block part vectorized using 16
byte vectors
-mol.fppized.f90:13590:101: optimized: basic block part vectorized using 16
byte vectors
-mol.fppized.f90:13590:101: optimized: basic block part vectorized using 16
byte vectors
-mol.fppized.f90:14976:35: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:14979:35: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:15039:64: optimized: basic block part vectorized using 32 byte
vectors
-mol.fppized.f90:15320:80: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:16184:83: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:16207:93: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:16246:104: optimized: basic block part vectorized using 16
byte vectors
-mol.fppized.f90:16248:104: optimized: basic block part vectorized using 16
byte vectors
-mol.fppized.f90:16250:88: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:16300:101: optimized: basic block part vectorized using 16
byte vectors
-mol.fppized.f90:16382:99: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:16385:107: optimized: basic block part vectorized using 16
byte vectors
-mol.fppized.f90:16416:86: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:16424:94: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:16572:97: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:16870:94: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:16931:100: optimized: basic block part vectorized using 16
byte vectors
-mol.fppized.f90:17022:101: optimized: basic block part vectorized using 16
byte vectors
-mol.fppized.f90:17087:109: optimized: basic block part vectorized using 16
byte vectors
-mol.fppized.f90:17181:51: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:17273:50: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:17274:19: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:17600:98: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:17906:104: optimized: basic block part vectorized using 16
byte vectors
-mol.fppized.f90:18057:107: optimized: basic block part vectorized using 16
byte vectors
-mol.fppized.f90:18060:116: optimized: basic block part vectorized using 16
byte vectors
-mol.fppized.f90:18087:93: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:18090:102: optimized: basic block part vectorized using 16
byte vectors
-mol.fppized.f90:19909:65: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:19925:62: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:4321:59: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:4322:58: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:4330:60: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:4335:72: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:4342:68: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:4343:67: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:4350:69: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:4470:62: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:4484:63: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:4495:58: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:4501:57: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:4510:59: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:4518:71: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:4527:67: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:4533:66: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:4541:68: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:9128:77: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:9129:77: optimized: basic block part vectorized using 16 byte
vectors
-mol.fppized.f90:9130:77: optimized: basic block part vectorized using 16 byte
vectors
-mol_main.fppized.f90:1354:33: optimized: basic block part vectorized using 16
byte vectors
-mol_main.fppized.f90:1365:49: optimized: basic block part vectorized using 16
byte vectors
-mol_main.fppized.f90:3590:67: optimized: basic block part vectorized using 16
byte vectors
-mol_main.fppized.f90:3590:67: optimized: basic block part vectorized using 16
byte vectors
-mol_main.fppized.f90:4184:57: optimized: basic block part vectorized using 16
byte vectors
-mol_main.fppized.f90:4194:60: optimized: basic block part vectorized using 16
byte vectors
-mol_main.fppized.f90:4202:52: optimized: basic block part vectorized using 16
byte vectors
-mol_main.fppized.f90:4215:40: optimized: basic block part vectorized using 16
byte vectors
-mol_main.fppized.f90:4223:42: optimized: basic block part vectorized using 16
byte vectors
-mol_main.fppized.f90:4246:40: optimized: basic block part vectorized using 16
byte vectors
-pointgroup.fppized.f90:1198:38: optimized: basic block part vectorized using
16 byte vectors
-pointgroup.fppized.f90:1204:48: optimized: basic block part vectorized using
16 byte vectors
-pointgroup.fppized.f90:1208:52: optimized: basic block part vectorized using
16 byte vectors
-pointgroup.fppized.f90:1213:52: optimized: basic block part vectorized using
16 byte vectors
-pointgroup.fppized.f90:1393:73: optimized: basic block part vectorized using
16 byte vectors
-pointgroup.fppized.f90:1627:39: optimized: basic block part vectorized using
16 byte vectors
-pointgroup.fppized.f90:1642:54: optimized: basic block part vectorized using
16 byte vectors
-pointgroup.fppized.f90:749:40: optimized: basic block part vectorized using 16
byte vectors
-pointgroup.fppized.f90:987:48: optimized: basic block part vectorized using 16
byte vectors
-realmat.fppized.f90:2784:29: optimized: basic block part vectorized using 16
byte vectors
-realmat.fppized.f90:3477:50: optimized: basic block part vectorized using 16
byte vectors
-realmat.fppized.f90:3477:50: optimized: basic block part vectorized using 16
byte vectors
-realmat.fppized.f90:783:31: optimized: basic block part vectorized using 16
byte vectors
-realmat.fppized.f90:783:31: optimized: basic block part vectorized using 16
byte vectors
-realmat.fppized.f90:783:31: optimized: basic block part vectorized using 16
byte vectors
-realmat.fppized.f90:783:31: optimized: basic block part vectorized using 16
byte vectors
-realmat.fppized.f90:783:31: optimized: basic block part vectorized using 16
byte vectors
-realmat.fppized.f90:795:37: optimized: basic block part vectorized using 16
byte vectors
-realmat.fppized.f90:795:37: optimized: basic block part vectorized using 16
byte vectors
-realmat.fppized.f90:795:37: optimized: basic block part vectorized using 16
byte vectors
-realmat3.fppized.f90:227:36: optimized: basic block part vectorized using 16
byte vectors
-realmat3vec.fppized.f90:162:27: optimized: basic block part vectorized using
16 byte vectors
-realmat4.fppized.f90:142:40: optimized: basic block part vectorized using 16
byte vectors
-realmat4.fppized.f90:142:40: optimized: basic block part vectorized using 16
byte vectors
-realmat4.fppized.f90:163:52: optimized: basic block part vectorized using 16
byte vectors
-realmat4.fppized.f90:163:52: optimized: basic block part vectorized using 16
byte vectors
-realmat5.fppized.f90:134:46: optimized: basic block part vectorized using 16
byte vectors
-realmat5.fppized.f90:146:61: optimized: basic block part vectorized using 16
byte vectors
-realvec.fppized.f90:2212:44: optimized: basic block part vectorized using 16
byte vectors
-realvec.fppized.f90:2224:48: optimized: basic block part vectorized using 16
byte vectors
-realvec.fppized.f90:546:27: optimized: basic block part vectorized using 16
byte vectors
-reflection.fppized.f90:740:56: optimized: basic block part vectorized using 16
byte vectors
-reflection.fppized.f90:742:37: optimized: basic block part vectorized using 16
byte vectors
-reflectionvec.fppized.f90:1813:39: optimized: basic block part vectorized
using 16 byte vectors
-reflectionvec.fppized.f90:972:48: optimized: basic block part vectorized using
8 byte vectors
-roby.fppized.f90:1329:64: optimized: basic block part vectorized using 16 byte
vectors
-roby.fppized.f90:1329:64: optimized: basic block part vectorized using 16 byte
vectors
-roby.fppized.f90:1629:53: optimized: basic block part vectorized using 16 byte
vectors
-roby.fppized.f90:1630:53: optimized: basic block part vectorized using 16 byte
vectors
-roby.fppized.f90:1682:57: optimized: basic block part vectorized using 16 byte
vectors
-roby.fppized.f90:1683:57: optimized: basic block part vectorized using 16 byte
vectors
-shell.fppized.f90:693:56: optimized: basic block part vectorized using 16 byte
vectors
-shell.fppized.f90:695:37: optimized: basic block part vectorized using 16 byte
vectors
-shell2.fppized.f90:2452:61: optimized: basic block part vectorized using 16
byte vectors
-shell2.fppized.f90:2458:63: optimized: basic block part vectorized using 16
byte vectors
-shell2.fppized.f90:2565:67: optimized: basic block part vectorized using 16
byte vectors
-shell2.fppized.f90:2577:69: optimized: basic block part vectorized using 16
byte vectors
-shell2.fppized.f90:2592:67: optimized: basic block part vectorized using 16
byte vectors
-shell2.fppized.f90:2601:69: optimized: basic block part vectorized using 16
byte vectors
-shell2.fppized.f90:2707:67: optimized: basic block part vectorized using 16
byte vectors
-shell2.fppized.f90:2719:69: optimized: basic block part vectorized using 16
byte vectors
-shell2.fppized.f90:2734:67: optimized: basic block part vectorized using 16
byte vectors
-shell2.fppized.f90:2743:69: optimized: basic block part vectorized using 16
byte vectors
-shell2.fppized.f90:3422:62: optimized: basic block part vectorized using 16
byte vectors
-shell2.fppized.f90:3427:72: optimized: basic block part vectorized using 16
byte vectors
-shell2.fppized.f90:3427:72: optimized: basic block part vectorized using 16
byte vectors
-shell2.fppized.f90:3446:62: optimized: basic block part vectorized using 16
byte vectors
-shell2.fppized.f90:3451:72: optimized: basic block part vectorized using 16
byte vectors
-shell2.fppized.f90:3451:72: optimized: basic block part vectorized using 16
byte vectors
-shell2.fppized.f90:3536:62: optimized: basic block part vectorized using 16
byte vectors
-shell2.fppized.f90:3541:72: optimized: basic block part vectorized using 16
byte vectors
-shell2.fppized.f90:3541:72: optimized: basic block part vectorized using 16
byte vectors
-shell2.fppized.f90:3560:62: optimized: basic block part vectorized using 16
byte vectors
-shell2.fppized.f90:3565:72: optimized: basic block part vectorized using 16
byte vectors
-shell2.fppized.f90:3565:72: optimized: basic block part vectorized using 16
byte vectors
-shell2.fppized.f90:3603:78: optimized: basic block part vectorized using 16
byte vectors
-shell2.fppized.f90:3608:72: optimized: basic block part vectorized using 16
byte vectors
-slaterbasis.fppized.f90:680:47: optimized: basic block part vectorized using
16 byte vectors
-slaterbasis.fppized.f90:744:56: optimized: basic block part vectorized using
16 byte vectors
-slaterbasis.fppized.f90:746:37: optimized: basic block part vectorized using
16 byte vectors
-slatershell.fppized.f90:766:56: optimized: basic block part vectorized using
16 byte vectors
-slatershell.fppized.f90:768:37: optimized: basic block part vectorized using
16 byte vectors
-spacegroup.fppized.f90:2014:19: optimized: basic block part vectorized using
16 byte vectors
-spacegroup.fppized.f90:2031:19: optimized: basic block part vectorized using
16 byte vectors
-spacegroup.fppized.f90:2206:44: optimized: basic block part vectorized using
16 byte vectors
-spacegroup.fppized.f90:2206:44: optimized: basic block part vectorized using
16 byte vectors
-spacegroup.fppized.f90:2328:81: optimized: basic block part vectorized using 8
byte vectors
-spacegroup.fppized.f90:2334:57: optimized: basic block part vectorized using 8
byte vectors
-spacegroup.fppized.f90:2366:38: optimized: basic block part vectorized using
16 byte vectors
-textfile.fppized.f90:4668:53: optimized: basic block part vectorized using 32
byte vectors
-textfile.fppized.f90:4723:52: optimized: basic block part vectorized using 32
byte vectors
-textfile.fppized.f90:4752:49: optimized: basic block part vectorized using 32
byte vectors

Reply via email to