This series of two patches reimplements ARC's profiling support in a
sustainable way.

First, we remove the old gmon lib implementation and its dependencies
from gcc and libgcc. This old implementation was partially working
only for A7xx type of processors, and only for bare-metal type of
applications. Also this implementation hinders the toolchain to build
for a glibc system.

Then, we reimplement the profiling support as done in anyonther port,
relaying on the existence of a gmon lib in the support C-libraries,
namely Newlib or glibc.

Ok to apply?
Claudiu

Claudiu Zissulescu (2):
  [ARC] Generating code for profiling.
  [ARC] Remove old prof patterns.

 gcc/config/arc/arc-protos.h             |   1 -
 gcc/config/arc/arc.c                    | 152 -----------
 gcc/config/arc/arc.h                    |  28 +-
 gcc/config/arc/arc.md                   |  98 +------
 gcc/config/arc/arc.opt                  |   4 -
 gcc/doc/invoke.texi                     |   8 +-
 libgcc/config.host                      |  10 +-
 libgcc/config/arc/crtg.S                |  51 ----
 libgcc/config/arc/crtgend.S             |  33 ---
 libgcc/config/arc/gmon/atomic.h         |  26 --
 libgcc/config/arc/gmon/auxreg.h         |  35 ---
 libgcc/config/arc/gmon/dcache_linesz.S  |  57 ----
 libgcc/config/arc/gmon/gmon.c           | 450 --------------------------------
 libgcc/config/arc/gmon/machine-gmon.h   |  65 -----
 libgcc/config/arc/gmon/mcount.c         | 206 ---------------
 libgcc/config/arc/gmon/prof-freq-stub.S |  40 ---
 libgcc/config/arc/gmon/prof-freq.c      |  60 -----
 libgcc/config/arc/gmon/profil.S         | 164 ------------
 libgcc/config/arc/gmon/sys/gmon.h       | 217 ---------------
 libgcc/config/arc/gmon/sys/gmon_out.h   |  55 ----
 libgcc/config/arc/t-arc                 |  37 ---
 libgcc/config/arc/t-arc-newlib          |  22 --
 libgcc/config/arc/t-arc-uClibc          |  38 +++
 libgcc/config/arc/t-arc700-uClibc       |  40 ---
 24 files changed, 60 insertions(+), 1837 deletions(-)
 delete mode 100644 libgcc/config/arc/crtg.S
 delete mode 100644 libgcc/config/arc/crtgend.S
 delete mode 100644 libgcc/config/arc/gmon/atomic.h
 delete mode 100644 libgcc/config/arc/gmon/auxreg.h
 delete mode 100644 libgcc/config/arc/gmon/dcache_linesz.S
 delete mode 100644 libgcc/config/arc/gmon/gmon.c
 delete mode 100644 libgcc/config/arc/gmon/machine-gmon.h
 delete mode 100644 libgcc/config/arc/gmon/mcount.c
 delete mode 100644 libgcc/config/arc/gmon/prof-freq-stub.S
 delete mode 100644 libgcc/config/arc/gmon/prof-freq.c
 delete mode 100644 libgcc/config/arc/gmon/profil.S
 delete mode 100644 libgcc/config/arc/gmon/sys/gmon.h
 delete mode 100644 libgcc/config/arc/gmon/sys/gmon_out.h
 delete mode 100644 libgcc/config/arc/t-arc-newlib
 create mode 100644 libgcc/config/arc/t-arc-uClibc
 delete mode 100644 libgcc/config/arc/t-arc700-uClibc

-- 
1.9.1

Reply via email to