1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-20 03:23:01 +02:00
Commit Graph

356 Commits

Author SHA1 Message Date
Chris Lattner
b8e0d14af0 * Rename machineFrameInfo to targetFrameInfo
* Constant pool and frame info is no longer directly in MachineFunction

llvm-svn: 5177
2002-12-28 20:21:29 +00:00
Chris Lattner
27a6ef45be * Rename MachineFrameInfo to TargetFrameInfo
* Move some sparc specific code here from Target files

llvm-svn: 5176
2002-12-28 20:20:24 +00:00
Chris Lattner
f34aa0986d * TargetData is no longer directly accessable from TM
* s/unsigned int/unsigned/

llvm-svn: 5175
2002-12-28 20:19:44 +00:00
Chris Lattner
376bdd301b * TargetData is no longer directly accessable from TargetMachine
* Constpool & frame info is no longer directly in MachineFunction

llvm-svn: 5174
2002-12-28 20:18:21 +00:00
Chris Lattner
47d92f4d81 * Frame & const pool info is no longer directly in MachineFunction
llvm-svn: 5173
2002-12-28 20:17:43 +00:00
Chris Lattner
711e50b6ff * Changes to be a MachineFunctionPass
* Frame information is now stuck in MachineFunctionInfo instead of directly
  in MachineFunction.
* Don't require a TM as an argument to the ctor

llvm-svn: 5172
2002-12-28 20:16:08 +00:00
Chris Lattner
e82edfba8e * Don't access TargetData directly
* Changes because frame info is not in MachineFunction directly anymore

llvm-svn: 5171
2002-12-28 20:15:01 +00:00
Chris Lattner
4fecd98cb0 Sparc is not little endian
llvm-svn: 5129
2002-12-24 00:02:38 +00:00
Chris Lattner
56c48a37a8 Initialize implicit uses/defs fields for sparc backend to empty list
llvm-svn: 4876
2002-12-03 05:41:54 +00:00
Chris Lattner
0bf125c617 Fix misleading indentation
llvm-svn: 4730
2002-11-17 22:57:23 +00:00
Vikram S. Adve
51aa205bd1 Remove a nasty little semi-colon someone introduced which
prevented any machine instrs from being printed!

llvm-svn: 4557
2002-11-06 00:34:26 +00:00
Chris Lattner
dbf49d6266 Reassociate pass now works
llvm-svn: 4473
2002-10-31 17:16:18 +00:00
Vikram S. Adve
913883dd6e In getID(), don't call getValidSymbolName to mangle external names!
llvm-svn: 4451
2002-10-30 20:16:38 +00:00
Chris Lattner
9e8fab4aa1 Sparc backend doesn't use target specific flags yet
llvm-svn: 4440
2002-10-30 01:07:12 +00:00
Chris Lattner
5e881d4c19 These are no longer virtual methods
llvm-svn: 4420
2002-10-29 22:01:44 +00:00
Chris Lattner
5d798b7887 * Privatize the TargetName
* Move optSizeForSubWordData to TargetData
* Remove unused fields

llvm-svn: 4417
2002-10-29 21:48:17 +00:00
Chris Lattner
eec571dce8 Allow TargetMachine to refuse static code gen
llvm-svn: 4415
2002-10-29 21:12:46 +00:00
Chris Lattner
bc44fbfd6d Remove unneccesary #includes
llvm-svn: 4408
2002-10-29 20:47:46 +00:00
Chris Lattner
d589e36f4e Rename Sparc.h to TargetMachineImpls.h
llvm-svn: 4407
2002-10-29 20:47:26 +00:00
Vikram S. Adve
fa70a60209 Bug fix: align size for dynamic allocas according to stack pointer
alignment restrictions.  This is incomplete for one case.

llvm-svn: 4397
2002-10-29 19:37:31 +00:00
Chris Lattner
1a53fc24c7 *** empty log message ***
llvm-svn: 4390
2002-10-29 17:35:41 +00:00
Chris Lattner
e185af9a93 MachineInstrInfo doesn't need a TargetMachine
llvm-svn: 4372
2002-10-29 15:45:20 +00:00
Chris Lattner
f262fc83e2 Use BuildMI instead of explicit code.
llvm-svn: 4362
2002-10-28 21:43:57 +00:00
Chris Lattner
566b2147f9 Remove all traces of the "Opcode Mask" field in the MachineInstr class
llvm-svn: 4359
2002-10-28 21:17:20 +00:00
Chris Lattner
51efa81c85 Fix minor bug
llvm-svn: 4355
2002-10-28 20:11:17 +00:00
Chris Lattner
02d7156e35 Don't pass default args
llvm-svn: 4354
2002-10-28 20:10:56 +00:00
Misha Brukman
6f3b1a31a1 Rewrote uses of deprecated `MachineFunction::get(BasicBlock *BB)'.
llvm-svn: 4352
2002-10-28 20:01:13 +00:00
Misha Brukman
f9d06cfc80 Replaced uses of deprecated `MachineFunction::get(BasicBlock *BB)'.
llvm-svn: 4351
2002-10-28 20:00:31 +00:00
Chris Lattner
8ce9d60bc0 Don't bother passing in default value
llvm-svn: 4347
2002-10-28 19:46:25 +00:00
Chris Lattner
9a346a4ded Fixes to work with updated RegAlloc
llvm-svn: 4345
2002-10-28 19:32:07 +00:00
Chris Lattner
e309cdbc95 Rename the redundant MachineOperand::getOperandType() to MachineOperand::getType()
llvm-svn: 4331
2002-10-28 04:45:29 +00:00
Chris Lattner
df1d87f5f3 *** empty log message ***
llvm-svn: 4323
2002-10-28 02:01:37 +00:00
Chris Lattner
b8c6acfbc0 Rename MachineCodeForBasicBlock to MachineBasicBlock
llvm-svn: 4318
2002-10-28 01:41:47 +00:00
Chris Lattner
33b00d8186 Move machine code generation/destruction passes out of Sparc.cpp because
they are generic

llvm-svn: 4310
2002-10-28 01:12:41 +00:00
Chris Lattner
e15e3807a1 Move addPassesToEmitAssembly from TargetMachine to UltraSparc because it
really is sparc specific.

llvm-svn: 4308
2002-10-28 01:03:43 +00:00
Misha Brukman
142795fd17 Changed MachineCodeForMethod' to MachineFunction'.
llvm-svn: 4301
2002-10-28 00:28:31 +00:00
Chris Lattner
cf9b4b2971 change ++ to +1 when using random access iterators
llvm-svn: 4292
2002-10-27 19:09:51 +00:00
Chris Lattner
25173c1b4d Prune #includes
llvm-svn: 4277
2002-10-25 02:01:33 +00:00
Chris Lattner
877a38f48e Fix misspelling
llvm-svn: 4276
2002-10-25 01:43:26 +00:00
Chris Lattner
b43b03614e Minor cleanups
Make sure to have a pass name

llvm-svn: 4268
2002-10-23 01:12:01 +00:00
Chris Lattner
dfc8fbf16b - Two minor improvements to the MachineInstr class to reduce footprint and
overhead: Merge 3 parallel vectors into 1, change regsUsed hash_set to be a
    bitvector.  Sped up LLC a little less than 10% in a debug build!

llvm-svn: 4261
2002-10-22 23:16:21 +00:00
Chris Lattner
6515ec02aa Make sure to escape \'s when they are output
llvm-svn: 4179
2002-10-15 19:56:24 +00:00
Vikram S. Adve
e4413c5804 Print "circular" warning message only in debug mode.
llvm-svn: 4170
2002-10-14 16:32:49 +00:00
Vikram S. Adve
3cb2d3379d Removed misleading const keyword.
llvm-svn: 4169
2002-10-14 16:32:24 +00:00
Chris Lattner
b16f596ab4 Allow emission of names that start with an underscore. This is needed to
interface with code that uses symbols in the ansi-c protected namespace.  In
most cases this comes from system header files, such as stdio.h.  In particular,
without this change, a reference to the __iob symbol is mangled into ll_iob,
which is not resolved by libc.

llvm-svn: 4165
2002-10-14 06:14:18 +00:00
Chris Lattner
fdf2ca9468 - Rename Instruction::First*Op to *OpsBegin, and Num*Ops to *OpsEnd to
reflect the fact that it's a range being defined.

llvm-svn: 4147
2002-10-13 19:39:16 +00:00
Vikram S. Adve
7436df838d Several major fixes, particularly in emitting constant aggregates:
(1) Padding bytes between structure fields (for alignment) were never
    being emitted into the constant pool so the layout did not match!
(2) In printing constants, structures containing structures or arrays
    were never handled.
(3) Support new model for external/uninitialized/initialized globals.
    Uninitialized globals are no longer emitted since they are external.
    Initialized globals may go either in .bss or in .data.

llvm-svn: 4134
2002-10-13 00:32:18 +00:00
Vikram S. Adve
032dee9564 Don't use %l0 for large operands to a SAVE since it is needed *before* SAVE!
We now use %g1 instead since that is shared and volatile.

llvm-svn: 4133
2002-10-13 00:24:06 +00:00
Vikram S. Adve
84fa49d0e5 Don't mark JMPLCALL and JMPLRET as branches.
llvm-svn: 4132
2002-10-13 00:22:32 +00:00
Vikram S. Adve
c78e160ede (1) Try to evaluate constant when multiplying 2 constants.
(2) Use intelligent multiply selection code for array allocas.
(3) Don't use cache padding for alloca'd stack slots!
(4) Bug fix in handling call arguments: was not copying sixth FP arg
    to int reg. when calling a function with no prototype.

llvm-svn: 4130
2002-10-13 00:18:57 +00:00