|  | Commit message (Collapse) | Author | Age | Files | Lines | 
|---|
| | 
| 
| 
| 
| 
| | did getFunction()->getName(). Remove includes of Function.h that are no longer needed.
llvm-svn: 162347 | 
| | 
| 
| 
| 
| 
| | some superfluous forward declarations.
llvm-svn: 152997 | 
| | 
| 
| 
| 
| 
| | size of static data.
llvm-svn: 151996 | 
| | 
| 
| 
| 
| 
| | MSP430, PPC, PTX, Sparc, X86, XCore.
llvm-svn: 150878 | 
| | 
| 
| 
| | llvm-svn: 148578 | 
| | 
| 
| 
| | llvm-svn: 135986 | 
| | 
| 
| 
| | llvm-svn: 135978 | 
| | 
| 
| 
| | llvm-svn: 135953 | 
| | 
| 
| 
| 
| 
| | better location welcome).
llvm-svn: 135438 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| | to MCRegisterInfo. Also initialize the mapping at construction time.
This patch eliminate TargetRegisterInfo from TargetAsmInfo. It's another step
towards fixing the layering violation.
llvm-svn: 135424 | 
| | 
| 
| 
| 
| 
| | registeration and creation code into XXXMCDesc libraries.
llvm-svn: 135184 | 
| | 
| 
| 
| | llvm-svn: 134030 | 
| | 
| 
| 
| | llvm-svn: 134027 | 
| | 
| 
| 
| 
| 
| | into XXXGenRegisterInfo.inc.
llvm-svn: 133922 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | target machine from those that are only needed by codegen. The goal is to
sink the essential target description into MC layer so we can start building
MC based tools without needing to link in the entire codegen.
First step is to refactor TargetRegisterInfo. This patch added a base class
MCRegisterInfo which TargetRegisterInfo is derived from. Changed TableGen to
separate register description from the rest of the stuff.
llvm-svn: 133782 | 
| | 
| 
| 
| 
| 
| 
| 
| | directives.
Fixes PR9826.
llvm-svn: 132317 | 
| | 
| 
| 
| 
| 
| | This fixes http://llvm.org/bugs/show_bug.cgi?id=9653
llvm-svn: 129303 | 
| | 
| 
| 
| 
| 
| | and fixes here and there.
llvm-svn: 123170 | 
| | 
| 
| 
| | llvm-svn: 122957 | 
| | 
| 
| 
| | llvm-svn: 122778 | 
| | 
| 
| 
| | llvm-svn: 122631 | 
| | 
| 
| 
| | llvm-svn: 122261 | 
| | 
| 
| 
| 
| 
| | MBlaze backend. This bug fix makes 64-bit math work on the MBlaze backend.
llvm-svn: 121649 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| | pc relative branch BRLD.
2. Make sure that the MBlaze stack is aligned to 4-byte boundaries.
3. Determine frame indexes that should be placed in the callers stack frame, as per the MBlaze ABI, and place them in the correct locations.
llvm-svn: 121639 | 
| | 
| 
| 
| | llvm-svn: 121355 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| | they need to be for the MBlaze backend because AsmPrinter::isBlockOnlyReachableByFallthrough does not take into account delay slots.
2. Re-adding .mask and .frame directives in printed assembly.
3. Adding .ent and .end directives in printed assembly.
4. Minor cleanups to MBlaze backend.
llvm-svn: 120095 | 
| | 
| 
| 
| | llvm-svn: 119740 | 
| | 
| 
| 
| 
| 
| | out of TargetRegisterInfo to TargetFrameInfo, which is definitely much better suitable place
llvm-svn: 119097 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| | 2. Parsing .word directive in MBlaze asm parser
3. Fixing hack where memory instructions reversed order of last two parameters
4. Fixing many improperly encoded instructions
5. Support parsing special instructions (MFS,MTS,etc.)
6. Removing unused functions from inst printer
llvm-svn: 118941 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | mostly based on the ARM AsmParser at this time and is not particularly
functional.
Changed the MBlaze data layout from:
    "E-p:32:32-i8:8:8-i16:16:16-i64:32:32-f64:32:32-v64:32:32-v128:32:32-n32"
to:
    "E-p:32:32:32-i8:8:8-i16:16:16"
because the MicroBlaze doesn't have i64, f64, v64, or v128 data types.
Cleaned up the MBlaze source code:
    1. The floating point register class has been removed. The
       MicroBlaze does not have floating point registers. Floating
       point values are simply stored in integer registers.
    2. Renaming the CPURegs register class to GPR to reflect the
       standard naming.
    3. Removing a lot of stale code from AsmPrinter after
       the conversion to InstPrinter.
    4. Simplified sign extended loads by marking them as
       expanded in ISelLowering.
llvm-svn: 117054 | 
| | 
| 
| 
| 
| 
| | to try to re-use scavenged frame index reference registers. rdar://8277890
llvm-svn: 112241 | 
| | 
| 
| 
| | llvm-svn: 105322 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| | the variable actually tracks.
N.B., several back-ends are using "HasCalls" as being synonymous for something
that adjusts the stack. This isn't 100% correct and should be looked into.
llvm-svn: 103802 | 
| | 
| 
| 
| 
| 
| 
| | optimization for non-leaf functions. This will be hooked up to gcc's
-momit-leaf-frame-pointer option. rdar://7886181
llvm-svn: 101984 | 
| | 
| 
| 
| | llvm-svn: 100214 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| | is preparatory to having PEI's scavenged frame index value reuse logic
properly distinguish types of frame values (e.g., whether the value is
stack-pointer relative or frame-pointer relative).
No functionality change.
llvm-svn: 98086 | 
| | 
| 
| 
| | llvm-svn: 97891 | 
| | 
| 
| 
| | llvm-svn: 97869 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | The MicroBlaze backend was generating stack layouts that did not
conform correctly to the ABI. This update generates stack layouts
which are closer to what GCC does.
Variable arguments support was added as well but the stack layout
for varargs has not been finalized.
llvm-svn: 97807 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | Adding the function "lookupGCCName" to the MBlazeIntrinsicInfo
class to support the Clang MicroBlaze target.
Additionally, minor fixes which remove some unused PIC code 
(PIC is not supported yet in the MicroBlaze backend) and
removed some unused variables.
llvm-svn: 97054 | 
|  | The MicroBlaze is a highly configurable 32-bit soft-microprocessor for
use on Xilinx FPGAs. For more information see:
http://www.xilinx.com/tools/microblaze.htm
http://en.wikipedia.org/wiki/MicroBlaze
The current LLVM MicroBlaze backend generates assembly which can be
compiled using the an appropriate binutils assembler.
llvm-svn: 96969 |