arch/tile: factor out <arch/opcode.h> header
authorChris Metcalf <cmetcalf@tilera.com>
Thu, 3 Nov 2011 03:02:17 +0000 (23:02 -0400)
committerChris Metcalf <cmetcalf@tilera.com>
Thu, 3 Nov 2011 20:58:54 +0000 (16:58 -0400)
commiteb7c792da5afa3b9ec3e802c30952f82d2e9722b
treedb796193297d4cc14bdb4d2b8001750a1f515f17
parentaeddea5d37d86d38c7a347110d8a052e9f45d955
arch/tile: factor out <arch/opcode.h> header

The kernel code was using some <asm> headers that included a mix
of hardware-specific information (typically found in Tilera <arch>
headers) and structures, enums, and function declarations supporting
the disassembly function of the tile-desc.c sources.

This change refactors that code so that a hardware-specific, but
OS- and application-agnostic header, is created: <arch/opcode.h>.
This header is then exported to userspace along with the other
<arch> headers and can be used to build userspace code; in particular,
it is used by glibc as part of implementing the backtrace() function.

The new header, together with a header that specifically describes
the disassembly code (<asm/tile-desc.h> with _32 and _64 variants),
replaces the old <asm/opcode-tile*.h> and <asm/opcode_constants*.h>
headers.

As part of this change, we are also renaming the 32-bit constants
from TILE_xxx to TILEPRO_xxx to better reflect the fact that they
are specific to the TILEPro architecture, and not to TILE-Gx
and any successor "tile" architecture chips.

Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
15 files changed:
arch/tile/include/arch/opcode.h [moved from arch/tile/include/asm/opcode_constants.h with 62% similarity]
arch/tile/include/arch/opcode_tilegx.h [moved from arch/tile/include/asm/opcode_constants_64.h with 50% similarity]
arch/tile/include/arch/opcode_tilepro.h [new file with mode: 0644]
arch/tile/include/asm/opcode-tile_32.h [deleted file]
arch/tile/include/asm/opcode-tile_64.h [deleted file]
arch/tile/include/asm/opcode_constants_32.h [deleted file]
arch/tile/include/asm/tile-desc.h [moved from arch/tile/include/asm/opcode-tile.h with 56% similarity]
arch/tile/include/asm/tile-desc_32.h [new file with mode: 0644]
arch/tile/include/asm/tile-desc_64.h [new file with mode: 0644]
arch/tile/kernel/backtrace.c
arch/tile/kernel/module.c
arch/tile/kernel/single_step.c
arch/tile/kernel/tile-desc_32.c
arch/tile/kernel/tile-desc_64.c
arch/tile/kernel/traps.c