The open64-booster branch is ready for another merge into the trunk.
The changes include all those in AMD’s recent x86 Open64 4.2.4
release.  Here is a summary:

o Improved function inlining heuristics and enhanced inline expansion
of library functions.

o Enhanced framework for multi-versioning.

o Improved inductive expression simplification and if-merging optimization.

o Improved code generation for the % operator.

o Improved interprocedural analysis for indirect function calls,
virtual functions, and functions with "noreturn" attribute.

o Optimized exception handling.

o Optimized processing of Fortran 90 temporary arrays.

o Improved processor affinity mapping in the OpenMP and parallel
runtime library.

o Added support for 1 GB huge pages.

o Improved gcc compatibility with the addition of long double support
and bug fixes for ABI compatibility, nonstandard calling conventions,
and inline assembly.

o Improved Fortran support with prebuilt OpenMP bindings and bug fixes
for Fortran preprocessing and OpenMP compilation.

o New options for better control of floating point accuracy.

o General correctness improvements including bug fixes for problems
with C++ short circuit operators, prefetching, inlining, and PIC code
generation.

The bugs fixed include 566, 567, 570, and the cmplr_segmented_array.h
bug that Mike Murphy pointed out recently.

We would like to complete the merge before the end of July.  We have
built a compiler from the merged source and are in the process of
doing the testing described in
http://wiki.open64.net/index.php/CheckinPolicy.

I did not attach the changes since they are fairly large (~1.4M).
Instead I attached the output of diffstat showing which files have
changed -- not included in that output are a handful of new files in
be/opt and osprey/libfi/mathlb.  Gatekeepers: please let me know who
will participate in the review/approval process and I will send the
patch directly.  Anyone else that is interested is welcome to take a
look, too.  Thanks,

-David Coakley / AMD Open Source Compiler Engineering
 install_compiler.sh                                  |   31 
 osprey-gcc-4.2.0/gcc/omp-low.c                       |    4 
 osprey-gcc-4.2.0/gcc/opts.c                          |    6 
 osprey-gcc-4.2.0/gcc/tree.c                          |    5 
 osprey/be/be/dra_ec.cxx                              |    8 
 osprey/be/be/driver.cxx                              |   13 
 osprey/be/be/omp_lower.cxx                           |   20 
 osprey/be/cg/bbutil.cxx                              |   16 
 osprey/be/cg/cflow.cxx                               |   94 
 osprey/be/cg/cg.cxx                                  |   14 
 osprey/be/cg/cg_flags.cxx                            |    9 
 osprey/be/cg/cg_flags.h                              |   23 
 osprey/be/cg/cg_gcov.cxx                             |    8 
 osprey/be/cg/cg_spill.cxx                            |    8 
 osprey/be/cg/cgdriver.cxx                            |   22 
 osprey/be/cg/cgemit.cxx                              |   19 
 osprey/be/cg/cgexp.cxx                               |   27 
 osprey/be/cg/cgexp_internals.h                       |    9 
 osprey/be/cg/cio_rwtran.cxx                          |   18 
 osprey/be/cg/ebo.cxx                                 |  495 +
 osprey/be/cg/freq.cxx                                |    8 
 osprey/be/cg/iface_scn.cxx                           |    8 
 osprey/be/cg/igls.cxx                                |    5 
 osprey/be/cg/localize.cxx                            |   71 
 osprey/be/cg/lra.cxx                                 |   63 
 osprey/be/cg/op.h                                    |   10 
 osprey/be/cg/oputil.cxx                              |   14 
 osprey/be/cg/tn.h                                    |    7 
 osprey/be/cg/tnutil.cxx                              |    7 
 osprey/be/cg/variants.cxx                            |   10 
 osprey/be/cg/variants.h                              |   21 
 osprey/be/cg/whirl2ops.cxx                           |  128 
 osprey/be/cg/x8664/cg_convert_x87.cxx                |   16 
 osprey/be/cg/x8664/cg_sched.cxx                      |  929 +-
 osprey/be/cg/x8664/cg_sched.h                        |    6 
 osprey/be/cg/x8664/cgemit_targ.cxx                   |  392 
 osprey/be/cg/x8664/cgtarget.cxx                      |   27 
 osprey/be/cg/x8664/ebo_special.cxx                   | 1257 ++-
 osprey/be/cg/x8664/exp_branch.cxx                    |   17 
 osprey/be/cg/x8664/exp_divrem.cxx                    |   30 
 osprey/be/cg/x8664/exp_loadstore.cxx                 |   69 
 osprey/be/cg/x8664/expand.cxx                        |  399 
 osprey/be/cg/x8664/register_targ.cxx                 |    4 
 osprey/be/com/clone.cxx                              |    7 
 osprey/be/com/clone_DST_utils.cxx                    |    4 
 osprey/be/com/cxx_template.h                         |   21 
 osprey/be/com/data_layout.cxx                        |   10 
 osprey/be/com/dep_graph.cxx                          |    4 
 osprey/be/com/dep_graph.h                            |    6 
 osprey/be/com/emulate.cxx                            |   69 
 osprey/be/com/ipa_section.h                          |    6 
 osprey/be/com/opt_alias_mgr.cxx                      |   27 
 osprey/be/com/opt_cvtl_rule.cxx                      |    6 
 osprey/be/com/stblock.cxx                            |    4 
 osprey/be/com/wn_fio.cxx                             |    8 
 osprey/be/com/wn_lower.cxx                           | 1373 +++
 osprey/be/com/wn_lower.h                             |    4 
 osprey/be/com/x8664/betarget.cxx                     |    3 
 osprey/be/lno/can.cxx                                |    8 
 osprey/be/lno/cse.cxx                                |   33 
 osprey/be/lno/cse.h                                  |    6 
 osprey/be/lno/ff_utils.cxx                           |   15 
 osprey/be/lno/fis_gthr.cxx                           |   16 
 osprey/be/lno/lego_io.cxx                            |    7 
 osprey/be/lno/lnodriver.cxx                          |    9 
 osprey/be/lno/lnopt_main.cxx                         |   21 
 osprey/be/lno/mem_sim.cxx                            |    7 
 osprey/be/lno/model.cxx                              |   24 
 osprey/be/lno/prefetch.cxx                           |    1 
 osprey/be/lno/scalar_expand.cxx                      |    7 
 osprey/be/lno/x8664/lnotarget.cxx                    |   69 
 osprey/be/opt/Makefile.gbase                         |    6 
 osprey/be/opt/opt_base.h                             |    6 
 osprey/be/opt/opt_bb.cxx                             | 1319 ---
 osprey/be/opt/opt_bb.h                               |  344 
 osprey/be/opt/opt_canon.cxx                          |   11 
 osprey/be/opt/opt_cfg.cxx                            |  169 
 osprey/be/opt/opt_cfg.h                              |   25 
 osprey/be/opt/opt_cfg_trans.cxx                      | 7724 -------------------
 osprey/be/opt/opt_cfg_trans.h                        |  246 
 osprey/be/opt/opt_combine.cxx                        |   49 
 osprey/be/opt/opt_cond_const.cxx                     |   24 
 osprey/be/opt/opt_cse.cxx                            |    4 
 osprey/be/opt/opt_dce.cxx                            |  263 
 osprey/be/opt/opt_eant.cxx                           |   69 
 osprey/be/opt/opt_etable.cxx                         |    5 
 osprey/be/opt/opt_etable.h                           |    8 
 osprey/be/opt/opt_find.cxx                           |    7 
 osprey/be/opt/opt_fold.cxx                           |   13 
 osprey/be/opt/opt_htable.cxx                         |   53 
 osprey/be/opt/opt_htable_emit.cxx                    |   13 
 osprey/be/opt/opt_ivr.cxx                            |  114 
 osprey/be/opt/opt_ivr.h                              |    6 
 osprey/be/opt/opt_lmv.cxx                            |  340 
 osprey/be/opt/opt_lmv.h                              |   15 
 osprey/be/opt/opt_lmv_helper.cxx                     |    4 
 osprey/be/opt/opt_lmv_helper.h                       |    4 
 osprey/be/opt/opt_main.cxx                           |  269 
 osprey/be/opt/opt_misc.cxx                           |   93 
 osprey/be/opt/opt_project.h                          |    6 
 osprey/be/opt/opt_reasso.cxx                         |    7 
 osprey/be/opt/opt_rename.cxx                         |    5 
 osprey/be/opt/opt_sym.h                              |    4 
 osprey/be/opt/opt_vn_expr_taxonomy.h                 |    6 
 osprey/be/opt/opt_wn.cxx                             |  268 
 osprey/be/opt/opt_wn.h                               |   28 
 osprey/be/opt/optimizer.h                            |    4 
 osprey/be/region/region_util.cxx                     |   22 
 osprey/be/region/region_util.h                       |    4 
 osprey/be/vho/f90_lower.cxx                          |    5 
 osprey/be/vho/vho_lower.cxx                          |    7 
 osprey/be/whirl2c/ty2c.cxx                           |   22 
 osprey/be/whirl2c/wn2c.cxx                           |   95 
 osprey/be/whirl2c/wn_attr.cxx                        |    8 
 osprey/be/whirl2f/init2f.cxx                         |   18 
 osprey/be/whirl2f/ty2f.cxx                           |    8 
 osprey/be/whirl2f/wn2f_load_store.cxx                |    6 
 osprey/clibinc/fmath.h                               |   10 
 osprey/common/com/cmplr_segmented_array.h            |    6 
 osprey/common/com/config.cxx                         |   18 
 osprey/common/com/config.h                           |    4 
 osprey/common/com/config_ipa.cxx                     |    8 
 osprey/common/com/config_ipa.h                       |    5 
 osprey/common/com/config_wopt.cxx                    |   39 
 osprey/common/com/config_wopt.h                      |   14 
 osprey/common/com/const.cxx                          |   13 
 osprey/common/com/intrn_entry.def                    |   16 
 osprey/common/com/intrn_info.h                       |   11 
 osprey/common/com/ir_reader.cxx                      |    8 
 osprey/common/com/mtypes.cxx                         |   48 
 osprey/common/com/mtypes.h                           |  179 
 osprey/common/com/opcode_gen_core.cxx                |    8 
 osprey/common/com/opcode_gen_core.h                  |  103 
 osprey/common/com/segmented_array.h                  |    6 
 osprey/common/com/symtab.cxx                         |   24 
 osprey/common/com/symtab_access.h                    |    9 
 osprey/common/com/symtab_defs.h                      |    3 
 osprey/common/com/symtab_utils.h                     |    4 
 osprey/common/com/targ_const.h                       |    6 
 osprey/common/com/targ_sim_body.h                    |   16 
 osprey/common/com/wn.cxx                             |  205 
 osprey/common/com/wn.h                               |   32 
 osprey/common/com/wn_core.h                          |   29 
 osprey/common/com/wn_simp_code.h                     |  400 
 osprey/common/com/wn_simp_ftable.h                   |    6 
 osprey/common/com/wn_util.h                          |    6 
 osprey/common/com/x8664/config_targ.cxx              |   14 
 osprey/common/com/x8664/targ_const.cxx               |  704 +
 osprey/common/com/x8664/targ_const_private.h         |    6 
 osprey/common/com/x8664/targ_em_const.cxx            |   62 
 osprey/common/com/x8664/targ_sim.cxx                 |   16 
 osprey/common/com/xstats.cxx                         |    6 
 osprey/common/intr/prebuilt/wtable.h                 |    5 
 osprey/common/targ_info/isa/x8664/isa.cxx            |   26 
 osprey/common/targ_info/isa/x8664/isa_operands.cxx   |   86 
 osprey/common/targ_info/isa/x8664/isa_pack.cxx       |   26 
 osprey/common/targ_info/isa/x8664/isa_print.cxx      |  107 
 osprey/common/targ_info/isa/x8664/isa_properties.cxx |  728 +
 osprey/common/targ_info/isa/x8664/isa_subset.cxx     |   26 
 osprey/common/targ_info/proc/x8664/barcelona_si.cxx  |   28 
 osprey/common/targ_info/proc/x8664/core_si.cxx       |   28 
 osprey/common/targ_info/proc/x8664/em64t_si.cxx      |   28 
 osprey/common/targ_info/proc/x8664/opteron_si.cxx    |   28 
 osprey/common/targ_info/proc/x8664/orochi_si.cxx     |   28 
 osprey/common/targ_info/proc/x8664/wolfdale_si.cxx   |   28 
 osprey/common/util/memory.c                          |  127 
 osprey/crayf90/fe90/fmath.h                          |    8 
 osprey/crayf90/fe90/s_call.c                         |   10 
 osprey/crayf90/fe90/src_input.c                      |   20 
 osprey/crayf90/sgi/cwh_addr.cxx                      |    9 
 osprey/crayf90/sgi/cwh_stab.cxx                      |    9 
 osprey/driver/OPTIONS                                |   13 
 osprey/driver/get_options.h                          |    5 
 osprey/driver/main.c                                 |   26 
 osprey/driver/opt_actions.c                          |   77 
 osprey/driver/phases.c                               |   26 
 osprey/instrumentation/libinstr2/Makefile.gbase      |    6 
 osprey/ipa/common/ipc_symtab_merge.cxx               |    5 
 osprey/ipa/inline/inline_summarize.h                 |    4 
 osprey/ipa/local/ipl_analyze_template.h              |    6 
 osprey/ipa/local/ipl_summarize.h                     |    6 
 osprey/ipa/local/ipl_summarize_template.h            |   38 
 osprey/ipa/local/ipl_summary.h                       |   10 
 osprey/ipa/local/ipl_summary_print.cxx               |   20 
 osprey/ipa/main/analyze/ipa_cg.cxx                   |  106 
 osprey/ipa/main/analyze/ipa_cg.h                     |   12 
 osprey/ipa/main/analyze/ipa_devirtual.cxx            |  104 
 osprey/ipa/main/analyze/ipa_inline.cxx               |  576 +
 osprey/ipa/main/analyze/ipa_inline.h                 |   62 
 osprey/ipa/main/analyze/ipa_trace.h                  |    5 
 osprey/ipa/main/optimize/ipo_icall.cxx               |  107 
 osprey/libacml_mv/Makefile.gbase                     |   12 
 osprey/libf/include/fmt.h                            |    4 
 osprey/libfi/mathlb/mathlb.gmakeinclude              |   10 
 osprey/libhugetlbfs/Makefile.gbase                   |   18 
 osprey/libhugetlbfs/elflink.c                        |   92 
 osprey/libhugetlbfs/hugetlbfs.h                      |    7 
 osprey/libhugetlbfs/ldscripts/elf_i386.xBDT          |    2 
 osprey/libhugetlbfs/ldscripts/elf_i386_1G.xBDT       |    2 
 osprey/libhugetlbfs/libhugetlbfs_internal.h          |    5 
 osprey/libhugetlbfs/morecore.c                       |   87 
 osprey/libopen64rt/fastcopy_gh.s                     |  108 
 osprey/libopenmp/omp_rtl.h                           |    8 
 osprey/libopenmp/omp_thread.h                        |    3 
 osprey/libopenmp/omp_util.c                          |  133 
 osprey/targdir_lib/libacml_mv/Makefile.in            |    2 
 osprey/targdir_lib/libhugetlbfs/Makefile.in          |    8 
 osprey/wgen/wgen_decl.cxx                            |   10 
 osprey/wgen/wgen_dst.cxx                             |   11 
 osprey/wgen/wgen_expr.cxx                            |   77 
 osprey/wgen/wgen_misc.cxx                            |    9 
 osprey/wgen/wgen_spin_symbol.cxx                     |   92 
 osprey/wgen/wgen_stmt.cxx                            |   52 
 213 files changed, 11898 insertions(+), 11315 deletions(-)
------------------------------------------------------------------------------
This SF.net email is sponsored by Sprint
What will you do first with EVO, the first 4G phone?
Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
_______________________________________________
Open64-devel mailing list
Open64-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open64-devel

Reply via email to