platform_system_core/libpixelflinger/codeflinger
Ashok Bhat bfc6dc4ca8 Pixelflinger: Support for handling 64-bit addresses in GGL Assembler
GGLAssembler assumes addresses to be 32-bit and uses ARM 32-bit
instructions to load/store/manipulate addresses. To support, 64-bit
architectures, following changes has been done

1. ARMAssemblerInterface has been extended to support four new
   operations ADDR_LDR, ADDR_STR, ADDR_SUB, ADDR_ADD. Base class
   implements these virtual functions to use 32bit  equivalent
   function. This avoids existing 32-bit Assembler backend
   implementations like ARMAssembler and MIPSAssembler  from
   mapping the new functions to existing equivalent routines.
   This also allows 64-bit Architectures like AArch64 to override
   the function in their assembler backend implementations.

2. GGLAssembler code (spread over GGLAssembler.cpp, GGLAssembler.h
   and texturing.cpp) has been changed to use the new operations
   for address operations.

Change-Id: I3d7eace4691e3e47cef737d97ac67ce6ef4fb18d
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
2013-12-12 17:30:13 +00:00
..
tinyutils move tinyutils into its own namespace 2013-04-01 16:50:43 -07:00
ARMAssembler.cpp Pixelflinger: Fix issue of pointers being stored in ints 2013-12-12 17:30:13 +00:00
ARMAssembler.h move tinyutils into its own namespace 2013-04-01 16:50:43 -07:00
ARMAssemblerInterface.cpp Pixelflinger: Support for handling 64-bit addresses in GGL Assembler 2013-12-12 17:30:13 +00:00
ARMAssemblerInterface.h Pixelflinger: Support for handling 64-bit addresses in GGL Assembler 2013-12-12 17:30:13 +00:00
ARMAssemblerProxy.cpp Pixelflinger: Support for handling 64-bit addresses in GGL Assembler 2013-12-12 17:30:13 +00:00
ARMAssemblerProxy.h Pixelflinger: Support for handling 64-bit addresses in GGL Assembler 2013-12-12 17:30:13 +00:00
CodeCache.cpp move tinyutils into its own namespace 2013-04-01 16:50:43 -07:00
CodeCache.h move tinyutils into its own namespace 2013-04-01 16:50:43 -07:00
GGLAssembler.cpp Pixelflinger: Support for handling 64-bit addresses in GGL Assembler 2013-12-12 17:30:13 +00:00
GGLAssembler.h Pixelflinger: Support for handling 64-bit addresses in GGL Assembler 2013-12-12 17:30:13 +00:00
MIPSAssembler.cpp move tinyutils into its own namespace 2013-04-01 16:50:43 -07:00
MIPSAssembler.h move tinyutils into its own namespace 2013-04-01 16:50:43 -07:00
armreg.h auto import from //depot/cupcake/@135843 2009-03-03 19:32:55 -08:00
blending.cpp move tinyutils into its own namespace 2013-04-01 16:50:43 -07:00
disassem.c Adds support for UBFX to JIT and Disassembler 2010-05-28 17:04:36 +01:00
disassem.h auto import from //depot/cupcake/@135843 2009-03-03 19:32:55 -08:00
load_store.cpp move tinyutils into its own namespace 2013-04-01 16:50:43 -07:00
mips_disassem.c Add MIPS support to pixelflinger. 2012-08-13 11:41:15 -07:00
mips_disassem.h Add MIPS support to pixelflinger. 2012-08-13 11:41:15 -07:00
mips_opcode.h Add MIPS support to pixelflinger. 2012-08-13 11:41:15 -07:00
texturing.cpp Pixelflinger: Support for handling 64-bit addresses in GGL Assembler 2013-12-12 17:30:13 +00:00