Chris Lattner
57542fcfc2
Loads are relocatable too
...
llvm-svn: 18198
2004-11-24 02:03:44 +00:00
Chris Lattner
7b1cf0d6c6
Calls do not need a MovPCtoLR instruction
...
llvm-svn: 18197
2004-11-24 02:00:06 +00:00
Chris Lattner
6a7ebe034e
Get constant pools working. This fixes even more programs, allowing us to
...
pass 24/42 in UnitTests (up from 20).
llvm-svn: 18196
2004-11-24 01:56:12 +00:00
Tanya Lattner
13c71ca7b6
Forced branches to be first to be scheduled.
...
llvm-svn: 18195
2004-11-24 01:49:10 +00:00
Chris Lattner
193b6f3281
Rewrite branches more closely to correct. This makes more stuff pass, and
...
stops the infinite loops!
llvm-svn: 18194
2004-11-24 01:35:12 +00:00
Chris Lattner
b55f748b1a
Branch instructions explicitly represent CRx in them. bEcause of this, encode
...
them explicitly as well.
llvm-svn: 18193
2004-11-24 01:15:19 +00:00
Nate Begeman
674fe0bb60
Fix encoding of bctrl, and remove some unused instructions
...
llvm-svn: 18192
2004-11-24 00:16:37 +00:00
Reid Spencer
67386ceacc
Make sure additional C++ suffixes are recognized by llvmc.
...
llvm-svn: 18191
2004-11-24 00:01:57 +00:00
Reid Spencer
a61edd8e92
Add the configurable configuration files for llvmc.
...
llvm-svn: 18190
2004-11-23 23:48:45 +00:00
Reid Spencer
cfa51ff82b
* Adjust the options to make them either accept multiple occurrences or be
...
optional so that compatibility with GCC is accomplished.
* Implement the -print-file-name option in an attempt to provide the same
functionality as GCC. Unfortunately, without loading the cpp or c config
files, this option won't help much.
llvm-svn: 18189
2004-11-23 23:47:58 +00:00
Reid Spencer
cd893a9c50
* Don't pass empty arguments to ExecuteAndWait because it can cause the
...
sub-tool to start reading its standard input instead of the specified
input.
* Clean up ouput of path names on error.
* Extend GetPathForLinkageItem to always search the LibraryPaths and thus
make it suitable for an interface function (required by llvmc.cpp).
* Implement support for language-specific default library paths.
llvm-svn: 18188
2004-11-23 23:45:49 +00:00
Reid Spencer
5e1e6b9f82
Configuration data now supports a vector of library paths.
...
Add the GetPathForLinkageItem method to the interface so full paths can
be generated for a given linkage item.
llvm-svn: 18187
2004-11-23 23:40:06 +00:00
Reid Spencer
fe6dd9da55
Add the c and cpp configuration files.
...
llvm-svn: 18186
2004-11-23 23:38:46 +00:00
Reid Spencer
e1ae9d7c00
Removed in favor of configurable (*.in) versions.
...
llvm-svn: 18185
2004-11-23 23:38:07 +00:00
Reid Spencer
d51dfe3946
Make various adjustments to parsing so that the separator character doesn't
...
terminate options or paths, so that SPACE tokens legally separate options
on a command line, and so that the lang.libs paths are parsed properly.
llvm-svn: 18184
2004-11-23 23:37:26 +00:00
Reid Spencer
513587fbe6
SPACE is a legitimate token now, to separate option words.
...
llvm-svn: 18183
2004-11-23 23:35:50 +00:00
Reid Spencer
6a0d9b99df
Handle space, separators, bad substitutions, and library search path better
...
than before.
llvm-svn: 18182
2004-11-23 23:35:16 +00:00
Reid Spencer
c14e53efb8
Configurable language configuration files.
...
llvm-svn: 18181
2004-11-23 23:33:08 +00:00
Reid Spencer
a193f3cdbf
Allow reading of member names that begin with an _ character.
...
llvm-svn: 18179
2004-11-23 22:35:39 +00:00
Chris Lattner
c7eeae4661
Fix encoding of blr and bctr
...
llvm-svn: 18178
2004-11-23 22:06:24 +00:00
John Criswell
fd769457b8
Added remark about GCC 3.2.2. Someone with more knowledge of the problem
...
can elaborate.
llvm-svn: 18177
2004-11-23 22:06:24 +00:00
Nate Begeman
c5fc6f5717
Use the correct register class as a constaint to gcc's inline assembly, so
...
that we don't end up trying to use r0 as a base register.
llvm-svn: 18176
2004-11-23 21:37:22 +00:00
Nate Begeman
617760687a
Save/Restore arg regs and nonvolatile regs the compiler might use during
...
CompilationCallback
llvm-svn: 18175
2004-11-23 21:34:18 +00:00
Chris Lattner
578dfd5e42
Fix the encoding of OR, AND and many other instructions
...
llvm-svn: 18174
2004-11-23 21:17:35 +00:00
Brian Gaeke
94c58dc877
Support shr long/ulong.
...
llvm-svn: 18173
2004-11-23 21:10:50 +00:00
Brian Gaeke
8d4a5ad55c
Support printing ConstantAggregateZeros.
...
llvm-svn: 18172
2004-11-23 21:10:49 +00:00
Brian Gaeke
2e7f71863f
Update failing SingleSource test-case list.
...
llvm-svn: 18171
2004-11-23 21:10:48 +00:00
Chris Lattner
a630adebc7
Remove argtype and argcount magic, which was used by the old asmprinter.
...
llvm-svn: 18170
2004-11-23 20:41:34 +00:00
Chris Lattner
be39b8f541
Get rid of flags that are dead
...
llvm-svn: 18169
2004-11-23 20:37:41 +00:00
Misha Brukman
c3184445de
We also provide a source distribution of the GCC front-end
...
llvm-svn: 18166
2004-11-23 19:26:24 +00:00
Chris Lattner
5f4b0e1bf7
Fix encoding of rlwinm?
...
llvm-svn: 18165
2004-11-23 19:23:32 +00:00
Chris Lattner
1238cca6df
Fix encodings
...
llvm-svn: 18164
2004-11-23 19:23:18 +00:00
Chris Lattner
431e0132ef
Enumerate CR registers
...
llvm-svn: 18162
2004-11-23 18:59:59 +00:00
Chris Lattner
a8936af13e
Initial implementation of exiting CompilationCallback
...
This should save all argument registers on entry and restore on exit, despite
that, simple things seem to work!!!
llvm-svn: 18161
2004-11-23 18:49:46 +00:00
Chris Lattner
febc3eb8fa
This method is dead
...
llvm-svn: 18160
2004-11-23 18:47:55 +00:00
Chris Lattner
24ad93f55c
Remove this method.
...
llvm-svn: 18159
2004-11-23 18:47:42 +00:00
Reid Spencer
f675b49722
Make sure the timing output is also sent to the log file for dejagnu, not
...
the log file of the NightlyTest.pl script.
llvm-svn: 18158
2004-11-23 16:23:50 +00:00
Chris Lattner
cccd49f1b7
Squelch a bogus warning
...
llvm-svn: 18157
2004-11-23 15:57:01 +00:00
Chris Lattner
b1fd07a862
Squelch a bogus warning.
...
llvm-svn: 18156
2004-11-23 15:56:38 +00:00
Nate Begeman
7e7a08dba5
Don't return value from void function. This is only temporary anyway while
...
the JIT is made to work!
llvm-svn: 18155
2004-11-23 10:04:49 +00:00
Brian Gaeke
bde370eb58
pseudocode for 64-bit lshr.
...
llvm-svn: 18154
2004-11-23 08:14:09 +00:00
Chris Lattner
40ff89c212
Fix a minor bug
...
llvm-svn: 18153
2004-11-23 06:56:31 +00:00
Chris Lattner
5369ab3e24
Be really paranoid about not breaking stuff yet
...
llvm-svn: 18152
2004-11-23 06:56:18 +00:00
Chris Lattner
4ff117585d
Implement the first hunk of CompilationCallback. The pieces missing are the
...
ones noted, which require funny PPC specific inline assembly.
If some angel felt the desire to help me, I think this is that last bit missing
for JIT support (however, generic code emitter might night work right with
the constant pool yet).
llvm-svn: 18151
2004-11-23 06:55:05 +00:00
Chris Lattner
96826dbaf3
Change formats, as suggested by Duraid
...
llvm-svn: 18150
2004-11-23 06:51:14 +00:00
Brian Gaeke
d3311665cc
Add more known-failing tests.
...
llvm-svn: 18149
2004-11-23 06:39:50 +00:00
Brian Gaeke
2491727b5d
Add the rest of the logical instructions.
...
llvm-svn: 18148
2004-11-23 06:39:37 +00:00
Chris Lattner
7445c5eadc
Implement the stub needed to get into compilation callback.
...
llvm-svn: 18147
2004-11-23 06:27:02 +00:00
Chris Lattner
e1187d46a1
Simplify code a bit
...
llvm-svn: 18146
2004-11-23 06:05:44 +00:00
Chris Lattner
8296c4c323
Initial implementation of the JIT interfaces. Relocation is done and stubs
...
for external functions work. CompilationCallback has not been written, and
stubs for internal functions are not generated yet. This means you can call
printf and exit, and use global variables, but cannot call functions local to
a module yet.
llvm-svn: 18145
2004-11-23 06:02:06 +00:00