Home | History | Annotate | only in /external/swiftshader/third_party/LLVM/lib/Target/Alpha
Up to higher level directory
NameDateSize
Alpha.h05-Oct-20171.3K
Alpha.td05-Oct-20172.4K
AlphaAsmPrinter.cpp05-Oct-20175.4K
AlphaBranchSelector.cpp05-Oct-20171.9K
AlphaCallingConv.td05-Oct-20171.7K
AlphaFrameLowering.cpp05-Oct-20174.9K
AlphaFrameLowering.h05-Oct-20171.2K
AlphaInstrFormats.td05-Oct-20176.9K
AlphaInstrInfo.cpp05-Oct-201712.8K
AlphaInstrInfo.h05-Oct-20173.5K
AlphaInstrInfo.td05-Oct-201758K
AlphaISelDAGToDAG.cpp05-Oct-201715.4K
AlphaISelLowering.cpp05-Oct-201736.9K
AlphaISelLowering.h05-Oct-20175.2K
AlphaLLRP.cpp05-Oct-20175.6K
AlphaMachineFunctionInfo.h05-Oct-20172.2K
AlphaRegisterInfo.cpp05-Oct-20176.3K
AlphaRegisterInfo.h05-Oct-20171.6K
AlphaRegisterInfo.td05-Oct-20174.9K
AlphaRelocations.h05-Oct-2017780
AlphaSchedule.td05-Oct-20173.1K
AlphaSelectionDAGInfo.cpp05-Oct-2017749
AlphaSelectionDAGInfo.h05-Oct-2017832
AlphaSubtarget.cpp05-Oct-20171.1K
AlphaSubtarget.h05-Oct-20171.3K
AlphaTargetMachine.cpp05-Oct-20171.8K
AlphaTargetMachine.h05-Oct-20172.1K
Makefile05-Oct-2017700
MCTargetDesc/05-Oct-2017
README.txt05-Oct-20171,023
TargetInfo/05-Oct-2017

README.txt

      1 ***
      2 
      3 add gcc builtins for alpha instructions
      4 
      5 
      6 ***
      7 
      8 custom expand byteswap into nifty 
      9 extract/insert/mask byte/word/longword/quadword low/high
     10 sequences
     11 
     12 ***
     13 
     14 see if any of the extract/insert/mask operations can be added
     15 
     16 ***
     17 
     18 match more interesting things for cmovlbc cmovlbs (move if low bit clear/set)
     19 
     20 ***
     21 
     22 lower srem and urem
     23 
     24 remq(i,j):  i - (j * divq(i,j)) if j != 0
     25 remqu(i,j): i - (j * divqu(i,j)) if j != 0
     26 reml(i,j):  i - (j * divl(i,j)) if j != 0
     27 remlu(i,j): i - (j * divlu(i,j)) if j != 0
     28 
     29 ***
     30 
     31 add crazy vector instructions (MVI):
     32 
     33 (MIN|MAX)(U|S)(B8|W4) min and max, signed and unsigned, byte and word
     34 PKWB, UNPKBW pack/unpack word to byte
     35 PKLB UNPKBL pack/unpack long to byte
     36 PERR pixel error (sum across bytes of bytewise abs(i8v8 a - i8v8 b))
     37 
     38 cmpbytes bytewise cmpeq of i8v8 a and i8v8 b (not part of MVI extensions)
     39 
     40 this has some good examples for other operations that can be synthesised well 
     41 from these rather meager vector ops (such as saturating add).
     42 http://www.alphalinux.org/docs/MVI-full.html
     43