llvm-6502/test/MC/Mips
Jack Carter 2f68b311a1 Initial assembler implementation of Mips load address macro
This patch provides initial implementation of load address 
macro instruction for Mips. We have implemented two kinds 
of expansions with their variations depending on the size 
of immediate operand:

 1) load address with immediate value directly:
    * la d,j => addiu d,$zero,j   (for -32768 <= j <= 65535)
    * la d,j => lui d,hi16(j)
                ori d,d,lo16(j)   (for any other 32 bit value of j)

 2) load load address with register offset value
    * la d,j(s) => addiu d,s,j     (for -32768 <= j <= 65535)
    * la d,j(s) => lui d,hi16(j)   (for any other 32 bit value of j)
                   ori d,d,lo16(j)
                   addu d,d,s

This patch does not cover the case when the address is loaded 
from the value of the label or function.

Contributer: Vladimir Medic


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165561 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-09 23:29:45 +00:00
..
do_switch.ll For mips64 switch statements in subroutines could generate 2012-08-22 00:49:30 +00:00
elf_basic.s Pass the correct ELFOSABI enumeration to the MipsELFObjectWriter constructor 2012-07-02 20:04:43 +00:00
elf-bigendian.ll Make the following changes in MipsAsmPrinter.cpp: 2012-05-12 00:48:43 +00:00
elf-N64.ll Add option disable-mips-delay-filler. Turn on mips' delay slot filler by 2012-08-22 02:51:28 +00:00
elf-objdump.s PR13013: ELF Type identification fails for MSB type ELF files. 2012-06-25 14:48:43 +00:00
elf-relsym.ll
elf-tls.ll Local dynamic TLS model for direct object output. Create the correct TLS MIPS 2011-12-22 01:05:17 +00:00
higher_highest.ll Fix mips' long branch pass. 2012-08-28 03:03:05 +00:00
lea_64.ll The Mips64InstrInfo.td definitions DynAlloc64 LEA_ADDiu64 2012-08-06 23:29:06 +00:00
lit.local.cfg Continue cleanup of LIT, getting rid of the remaining artifacts from dejagnu 2012-03-25 09:02:19 +00:00
mips64extins.ll The instruction DINS may be transformed into DINSU or DEXTM depending 2012-08-31 18:06:48 +00:00
mips64shift.ll Some instructions are passed to the assembler to be 2012-08-28 19:07:39 +00:00
mips_directives.s This patch is a partial implementation of mips .set assembler directive. Directive is defined as follows: 2012-10-04 02:29:46 +00:00
mips-alu-instructions.s The Mips standalone assembler aliased instruction support. 2012-09-07 01:42:38 +00:00
mips-expansions.s Initial assembler implementation of Mips load address macro 2012-10-09 23:29:45 +00:00
mips-fpu-instructions.s Adding support for instructions mfc0, mfc2, mtc0, mtc2 2012-10-06 01:17:37 +00:00
mips-jump-instructions.s The Mips standalone assembler aliased instruction support. 2012-09-07 01:42:38 +00:00
mips-memory-instructions.s The Mips standalone assembler fpu instruction support. 2012-09-07 00:23:42 +00:00
mips-relocations.s Initial relocations test for the Mips standalone assembler. 2012-09-07 20:38:18 +00:00
multi-64bit-func.ll Add option disable-mips-delay-filler. Turn on mips' delay slot filler by 2012-08-22 02:51:28 +00:00
pr11877.s Ensure .AliasedSymbol() is called on all uses of getSymbol(). Affects ARM and MIPS ELF backends. 2012-01-28 15:58:32 +00:00
r-mips-got-disp.ll The Mips specific relocation R_MIPS_GOT_DISP 2012-07-13 19:15:47 +00:00
sext_64_32.ll Another 32 to 64 bit sign extension bug. 2012-08-09 19:43:18 +00:00
sym-offset.ll Insert instructions to the entry basic block which initializes the global 2012-05-12 00:17:17 +00:00