LLVM backend for 6502
Go to file
Chris Lattner 72dd9bdcc5 Lower v8i16 multiply into this code:
li r5, lo16(LCPI1_0)
        lis r6, ha16(LCPI1_0)
        lvx v4, r6, r5
        vmulouh v5, v3, v2
        vmuleuh v2, v3, v2
        vperm v2, v2, v5, v4

where v4 is:
LCPI1_0:                                        ;  <16 x ubyte>
        .byte   2
        .byte   3
        .byte   18
        .byte   19
        .byte   6
        .byte   7
        .byte   22
        .byte   23
        .byte   10
        .byte   11
        .byte   26
        .byte   27
        .byte   14
        .byte   15
        .byte   30
        .byte   31

This is 5.07x faster on the G5 (measured) than lowering to scalar code +
loads/stores.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27789 91177308-0d34-0410-b5e6-96231b3b80d8
2006-04-18 03:43:48 +00:00
autoconf Ahem. HEAD -> 1.8cvs not 1.7 (I'm an idiot). 2006-04-14 03:01:27 +00:00
docs Adding back vector instructions to keep in mainline. 2006-04-14 19:24:33 +00:00
examples Minor corrections. 2006-03-24 03:11:31 +00:00
include/llvm Add some convenience methods. 2006-04-17 21:35:08 +00:00
lib Lower v8i16 multiply into this code: 2006-04-18 03:43:48 +00:00
projects Distribute the Stacker samples directory. 2006-04-13 06:16:37 +00:00
runtime Invert the tests on LLVMGCC_MAJVERS to check for value 4 instead of value 2006-04-07 21:45:23 +00:00
test new testcase 2006-04-18 03:22:16 +00:00
tools one too many l's 2006-04-13 04:21:31 +00:00
utils Fix a build failure on Vladimir's tester. 2006-04-18 00:21:25 +00:00
win32 Keep Visual Studio happy. 2006-04-11 02:01:22 +00:00
Xcode Misc. project changes. html + build config changes supplied by Devang. 2006-04-08 06:04:56 +00:00
.cvsignore Ignore stuff built by "make dist". 2006-04-07 15:55:18 +00:00
configure Ahem. HEAD -> 1.8cvs not 1.7 (I'm an idiot). 2006-04-14 03:01:27 +00:00
CREDITS.TXT quick update 2006-04-13 02:05:30 +00:00
LICENSE.TXT Happy New Year, LLVM. 2006-01-03 14:42:06 +00:00
llvm.spec For PR723: 2006-04-07 16:07:37 +00:00
llvm.spec.in For PR723: 2006-04-07 16:07:37 +00:00
Makefile Include the win32 and Xcode directories in the distribution. 2006-04-12 20:53:14 +00:00
Makefile.common Update comments to reflect new variable names. Patch contributed by 2005-02-14 16:02:19 +00:00
Makefile.config.in Fix a comment. 2006-04-09 23:39:43 +00:00
Makefile.rules Make sure that the C Frontend's runtime library directory is included as 2006-04-12 18:21:35 +00:00
README.txt Make the text of this file a little more useful. 2004-09-02 22:49:27 +00:00

Low Level Virtual Machine (LLVM)
================================

This directory and its subdirectories contain source code for the Low Level 
Virtual Machine, a toolkit for the construction of highly optimized compilers,
optimizers, and runtime environments. 

LLVM is open source software. You may freely distribute it under the terms of
the license agreement found in LICENSE.txt.

Please see the HTML documentation provided in docs/index.html for further
assistance with LLVM.