This is the mail archive of the gcc-cvs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

r242226 - in /branches/ARM/sve-branch/gcc: doc/...


Author: rsandifo
Date: Fri Nov 11 17:22:32 2016
New Revision: 242226

URL: https://gcc.gnu.org/viewcvs?rev=242226&root=gcc&view=rev
Log:
Add DWARF support for polynomial offsets

This patch adds support for DWARF location expressions
that involve polynomial offsets.  It adds a target hook that
says how the runtime invariants used in the offsets should be
represented in DWARF.  SVE vectors have to be a multiple of
128 bits in size, so the GCC port uses the number of 128-bit
blocks minus one as the runtime invariant.  However, in DWARF,
the vector length is exposed via a pseudo "VG" register that
holds the number of 64-bit elements in a vector.  Thus:

  indeterminate 1 == (VG / 2) - 1

The hook needs to be general enough to express this.
Note that in most cases the division and subtraction fold
away into surrounding expressions.

Modified:
    branches/ARM/sve-branch/gcc/doc/tm.texi
    branches/ARM/sve-branch/gcc/doc/tm.texi.in
    branches/ARM/sve-branch/gcc/dwarf2out.c
    branches/ARM/sve-branch/gcc/dwarf2out.h
    branches/ARM/sve-branch/gcc/rtl.h
    branches/ARM/sve-branch/gcc/target.def
    branches/ARM/sve-branch/gcc/targhooks.c
    branches/ARM/sve-branch/gcc/targhooks.h


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]