Chris Lattner
bc565b2a6c
There is no need to emit a shift if the size is constant, which is common
...
llvm-svn: 11420
2004-02-13 23:36:47 +00:00
Chris Lattner
8641f2fb58
Make sure to provide a prototype for the cbackend
...
llvm-svn: 11419
2004-02-13 23:36:03 +00:00
Chris Lattner
03eb5eb4f7
Update tests
...
llvm-svn: 11418
2004-02-13 23:33:17 +00:00
Chris Lattner
3681a0bd3f
Moved directory, update makefile
...
llvm-svn: 11417
2004-02-13 23:31:12 +00:00
Chris Lattner
85667eca81
CBackend is no longer here
...
llvm-svn: 11416
2004-02-13 23:29:37 +00:00
Chris Lattner
9301df3932
CBackend now lives here
...
llvm-svn: 11415
2004-02-13 23:29:20 +00:00
Chris Lattner
e2a5f8c233
Do not advertise our -c option anymore
...
llvm-svn: 11413
2004-02-13 23:24:46 +00:00
Chris Lattner
a2896eaee0
Mercilessly rip the cbackend out of llvm-dis. Leave a helpful error message
...
for those who have not heard the news.
llvm-svn: 11412
2004-02-13 23:22:40 +00:00
Chris Lattner
c3f1cb677f
The cbackend has never had anything to do with llvm assembly writing
...
llvm-svn: 11411
2004-02-13 23:19:51 +00:00
Chris Lattner
5a793ef4b5
Add support for -march=c
...
llvm-svn: 11410
2004-02-13 23:19:09 +00:00
Chris Lattner
d076de4bf3
Convert the C backend into a target, for use with LLC. This allows us to use
...
the lowerallocations pass to eliminate malloc/free warnings and hackish code
llvm-svn: 11409
2004-02-13 23:18:48 +00:00
Chris Lattner
93da3b1886
Change how we create the cwriter, and add a buttload of libraries that it now
...
needs. This will be fixed shortly
llvm-svn: 11407
2004-02-13 23:01:14 +00:00
Chris Lattner
d2cd0afd11
Change access to the cwriter
...
llvm-svn: 11406
2004-02-13 23:00:45 +00:00
Chris Lattner
81155b0069
Make the cwriter use the lowerinvoke pass so that it can either use "disabled exceptions" or
...
"expensive exceptions" controlled by an option. Also refactor and eliminate a bunch of cruft.
This is a temporary solution and causes millions of warnings to pour out of programs that use
exceptions, but it should fix the problem with sparc and the 'write' declaration (PR190).
Subsequent changes will make this stink much less
llvm-svn: 11405
2004-02-13 23:00:29 +00:00
Chris Lattner
110d7bd802
New testcase. The CFE should not generate illegal LLVM intrinsics, even if
...
the input program is horribly broken (like 126.gcc).
llvm-svn: 11401
2004-02-13 22:04:41 +00:00
John Criswell
b13b431a6e
Added check for target machine endian-ness and put the result into
...
Makefile.config (ENDIAN variable is set to big or little).
llvm-svn: 11398
2004-02-13 21:57:29 +00:00
Chris Lattner
33ed4f9de9
Add support for a bunch more functions
...
llvm-svn: 11395
2004-02-13 21:21:48 +00:00
Alkis Evlogimenos
6d6ab846af
Remove getAllocatedRegNum(). Use getReg() instead.
...
llvm-svn: 11393
2004-02-13 21:01:20 +00:00
Alkis Evlogimenos
e504fa6710
Mark MachineBasicBlock::operator[] deprecated.
...
llvm-svn: 11392
2004-02-13 20:05:56 +00:00
Alkis Evlogimenos
8159b05e03
Define DEPRECATED so that it can be used in function and variable
...
declarations.
llvm-svn: 11391
2004-02-13 20:05:44 +00:00
Chris Lattner
fbacee0077
Add support for fopen/fclose. Specifically with fopen, we were marking all of the
...
operands as incomplete, though fopen is known to only read them. This just adds
fclose for symmetry, though it doesn't gain anything. This makes the dsgraphs for
181.mcf much more precise.
llvm-svn: 11390
2004-02-13 20:05:32 +00:00
Alkis Evlogimenos
c1ef192d44
Use getNumVirtualRegs().
...
Whitespace cleanups.
llvm-svn: 11389
2004-02-13 18:20:47 +00:00
Alkis Evlogimenos
c109214f58
Add getNumVirtualRegs().
...
Whitespace cleanups.
llvm-svn: 11388
2004-02-13 18:07:06 +00:00
Chris Lattner
d07ccb4844
Bug fixed
...
llvm-svn: 11385
2004-02-13 17:03:01 +00:00
Chris Lattner
2265790f9f
Fix compilation of 126.gcc: intrinsic functions cannot throw, so they are not
...
allowed in invoke instructions. Thus, if we are inlining a call to an intrinsic
function into an invoke site, we don't need to turn the call into an invoke!
llvm-svn: 11384
2004-02-13 16:47:35 +00:00
Chris Lattner
b0fadd694d
Intrinsic functions cannot throw
...
llvm-svn: 11383
2004-02-13 16:46:46 +00:00
John Criswell
848bbea2c5
Updated to list all code/directories that have additional or alternate
...
licensing information.
Also added note to indicate that warrany disclaimer and the no-endorsement
clause applies to everything.
llvm-svn: 11382
2004-02-13 16:46:05 +00:00
Chris Lattner
170dd38f7c
Bug fix
...
llvm-svn: 11381
2004-02-13 16:40:24 +00:00
Chris Lattner
bdd49e8f4d
exit(1) instead of abort()'ing on error
...
llvm-svn: 11380
2004-02-13 16:37:43 +00:00
Chris Lattner
92da902d40
Fix buggy error message problem
...
llvm-svn: 11379
2004-02-13 16:33:56 +00:00
Misha Brukman
47df5a35ec
Fix spelling of `tendency'.
...
llvm-svn: 11378
2004-02-13 16:23:14 +00:00
Chris Lattner
2b87d0184b
Expose a pass ID for lower-invoke
...
llvm-svn: 11377
2004-02-13 16:16:35 +00:00
Chris Lattner
f1de565975
Expose a pass ID that can be 'required'
...
llvm-svn: 11376
2004-02-13 16:16:16 +00:00
Chris Lattner
da61b0ab20
Squish warning
...
llvm-svn: 11375
2004-02-13 16:14:50 +00:00
Chris Lattner
dd8e3f4208
Restructure code to handle memcpy/memmove
...
llvm-svn: 11374
2004-02-13 16:09:54 +00:00
Chris Lattner
4013ba42ee
Right, memcpy READS memory too :)
...
llvm-svn: 11373
2004-02-13 16:09:37 +00:00
Chris Lattner
3b458d2f65
New testcase for support for memcpy/memmove
...
llvm-svn: 11372
2004-02-13 16:04:51 +00:00
Brian Gaeke
40b9cf9615
Fix off-by-one in Interpreter::getFirstVarArg(), which was punishing
...
any attempts by LLI to use varargs (possibly left over from the introduction
of IntrinsicLowering??)
llvm-svn: 11370
2004-02-13 06:18:39 +00:00
Chris Lattner
c16e56ea41
Fine grainify namespacification, prune #includes
...
llvm-svn: 11369
2004-02-13 06:18:21 +00:00
Brian Gaeke
212ffba663
The Interpreter was failing the AtExit UnitTest. This fixes it.
...
llvm-svn: 11367
2004-02-13 05:48:00 +00:00
Brian Gaeke
50719e9dbc
Update the example here in the header file.
...
I don't know about you guys, but I rarely read the .html manuals :-)
llvm-svn: 11366
2004-02-13 04:49:04 +00:00
Brian Gaeke
7707461afa
Include <iosfwd>.
...
Add prototypes for MachineBasicBlock's dump() and print() methods.
llvm-svn: 11365
2004-02-13 04:40:15 +00:00
Brian Gaeke
4f4348e113
Refactor MachineFunction::print() into MachineBasicBlock::print().
...
Add MachineBasicBlock::dump().
llvm-svn: 11364
2004-02-13 04:39:55 +00:00
Brian Gaeke
44cc73b6f2
Add head-of-file comments and Doxygen comments. Tighten up a lot of whitespace.
...
Rename SetMachineOperandConst's formal parameters to match other methods here.
Mark some methods as being used only by the SPARC back-end.
Fix a missing-paren bug in OutputValue().
llvm-svn: 11363
2004-02-13 04:39:32 +00:00
Chris Lattner
705753bd4f
Add support for memcpy and memmove intrinsics. Why isn't the cwriter using
...
the intrinsiclowering code?? :(
llvm-svn: 11362
2004-02-12 23:13:33 +00:00
Chris Lattner
fffcec6c76
New features
...
llvm-svn: 11361
2004-02-12 21:21:17 +00:00
Chris Lattner
c41ea880a0
Be a bit more specific about what the alignment value means and the restrictions on it
...
llvm-svn: 11360
2004-02-12 21:18:15 +00:00
Chris Lattner
978a94db1a
New testcase for PR233: [llvmgcc] Structure copies result in a LOT of code
...
llvm-svn: 11359
2004-02-12 21:06:52 +00:00
Alkis Evlogimenos
00d97b6a13
Move ilist_trairs<MachineInstr> in MachineBasicBlock.
...
llvm-svn: 11358
2004-02-12 19:12:03 +00:00
Alkis Evlogimenos
3ecdcd18c5
Add parent pointer to MachineInstr that points to owning
...
MachineBasicBlock. Also change opcode to a short and numImplicitRefs
to an unsigned char so that overall MachineInstr's size stays the
same.
llvm-svn: 11357
2004-02-12 18:49:07 +00:00