Commit Graph

193 Commits

Author SHA1 Message Date
Jeff Cohen
66c5fd6c53 When a function takes a variable number of pointer arguments, with a zero
pointer marking the end of the list, the zero *must* be cast to the pointer
type.  An un-cast zero is a 32-bit int, and at least on x86_64, gcc will
not extend the zero to 64 bits, thus allowing the upper 32 bits to be
random junk.

The new END_WITH_NULL macro may be used to annotate a such a function
so that GCC (version 4 or newer) will detect the use of un-casted zero
at compile time.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23888 91177308-0d34-0410-b5e6-96231b3b80d8
2005-10-23 04:37:20 +00:00
Reid Spencer
0a262ba7c3 For PR616:
These patches make threading optional in LLVM. The configuration scripts are now
modified to accept a --disable-threads switch. If this is used, the Mutex class
will be implemented with all functions as no-op. Furthermore, linking against
libpthread will not be done. Finally, the ParallelJIT example needs libpthread
so its makefile was changed to always add -lpthread to the link line.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23003 91177308-0d34-0410-b5e6-96231b3b80d8
2005-08-24 10:07:20 +00:00
Jeff Cohen
00b16889ab Eliminate all remaining tabs and trailing spaces.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22523 91177308-0d34-0410-b5e6-96231b3b80d8
2005-07-27 06:12:32 +00:00
Reid Spencer
6fb0d735f0 Get rid of warnings on Alpha
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22428 91177308-0d34-0410-b5e6-96231b3b80d8
2005-07-13 23:20:24 +00:00
Reid Spencer
6a60d18018 Correct the file title.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22414 91177308-0d34-0410-b5e6-96231b3b80d8
2005-07-12 22:00:29 +00:00
Reid Spencer
e8cdc8b3a3 For PR418:
Add an example program that utilizes multiple threads in the JIT to process
work. This was used by Evan Jones as the original test case for ensuring
that the ExecutionEngine was thread safe.

Original source by Evan Jones (adapted from other LLVM JIT examples) and
made LLVM style compliant by Reid Spencer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22411 91177308-0d34-0410-b5e6-96231b3b80d8
2005-07-12 21:51:33 +00:00
Chris Lattner
f6b5c1abce Don't forget these are calls
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21730 91177308-0d34-0410-b5e6-96231b3b80d8
2005-05-06 06:21:59 +00:00
Chris Lattner
47968e4dfd These are legal for tail calls
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21723 91177308-0d34-0410-b5e6-96231b3b80d8
2005-05-06 05:59:50 +00:00
Misha Brukman
59f6449cff Convert tabs to spaces
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21433 91177308-0d34-0410-b5e6-96231b3b80d8
2005-04-22 03:18:56 +00:00
Misha Brukman
237cef4b0b Remove trailing whitespace at the end of lines
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21380 91177308-0d34-0410-b5e6-96231b3b80d8
2005-04-20 16:42:34 +00:00
Chris Lattner
7db7fa0828 add missing copyright header
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20614 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-15 15:46:23 +00:00
Alkis Evlogimenos
1d9f262b9d Stop using abegin and aend.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20610 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-15 07:20:55 +00:00
Alkis Evlogimenos
dadf88123f Stop using abegin.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20609 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-15 07:12:30 +00:00
Reid Spencer
8f631784f7 Use LLVMLIBS=JIT to get JIT libraries
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18333 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-29 07:17:18 +00:00
Reid Spencer
bf714df962 Add LLVMbzip2 library, now required.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18255 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-25 20:22:06 +00:00
Reid Spencer
815cbcf0f1 Fix PR456:\
Tools and libraries will be built into $(BUILD_OBJ_ROOT)/$(BuildMode)/bin and \
$(BUILD_OBJ_ROOT)/$(BuildMode)/lib, respectively. Furthermore, the example \
programs will go in $(BUILD_OBJ_ROOT)/$(BuildMode)/examples to keep them \
separate from the tools and hopefully out of the PATH. Install targets \
have not changed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17953 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-18 10:03:46 +00:00
Misha Brukman
7cf540bba0 Clean up code layout, delete extra blank line, say fibonacci' instead of foo'
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17478 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-05 04:11:40 +00:00
Chris Lattner
3c7d7ee761 Fix typeo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17466 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-04 05:00:18 +00:00
Chris Lattner
38f024daea Cleanup this example, simplifying it and making it conform to LLVM coding
standards


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17459 91177308-0d34-0410-b5e6-96231b3b80d8
2004-11-03 21:43:03 +00:00
Reid Spencer
6cb21d443e Change Library Names Not To Conflict With Others When Installed
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17286 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-27 23:18:45 +00:00
Misha Brukman
a9504af512 Use the shared Makefile.JIT for JIT-enablement, which also enables the examples
to have the JIT functioning on more platforms than just x86


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16993 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-14 19:02:13 +00:00
Brian Gaeke
0c50bc4cc2 Build BFtoLLVM example front-end by default
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16719 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-05 18:05:53 +00:00
Brian Gaeke
ddc1aaad5c Add BFtoLLVM example front end
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16714 91177308-0d34-0410-b5e6-96231b3b80d8
2004-10-05 18:05:25 +00:00
Reid Spencer
66e7cd0eea Correct the file header to reflect the new "examples" home for the file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16295 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-11 20:30:11 +00:00
Reid Spencer
86e5aef1ce Add library LLVMsystem.a because the JIT now needs it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16285 91177308-0d34-0410-b5e6-96231b3b80d8
2004-09-11 04:29:44 +00:00
Reid Spencer
3a168a7d68 Moved small examples from /projects/SmallExamples to /examples.
Made the "ModuleMaker" into an example since its just one source file.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16003 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-23 19:29:54 +00:00
Reid Spencer
c21214ac59 Fix Title line
Make the "DIRS" option descend any directory with a Makefile.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16001 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-23 18:06:31 +00:00
Chris Lattner
1c54afa431 Make people explicitly add dirs to this. Remove ModuleMaker as it currently
does not build (it must be configured before it will work)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15936 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-20 01:11:16 +00:00
Reid Spencer
e784fa40c5 Add the fibonacci example provided by Valery Khamenya.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15924 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-19 20:10:04 +00:00
Reid Spencer
f3b4755aa0 Make the SmallExamples programs compile in their new home.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15923 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-19 20:09:14 +00:00
Chris Lattner
95f114c5a9 Switch to using the JIT now that it can directly call zeroarg functions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15795 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-15 23:31:57 +00:00
Chris Lattner
e8bf58c170 Simplify code, make it print the constructed module before it is run.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15792 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-15 23:21:54 +00:00
Reid Spencer
54706d6801 Fix a copy & paste error .. correct the description of the program.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15623 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-10 19:18:51 +00:00
Reid Spencer
26a4ba73d3 Adding a simple example of how to use the JIT.
Contributed by Valery A. Khamenya. THANKS, Valery!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15622 91177308-0d34-0410-b5e6-96231b3b80d8
2004-08-10 19:14:36 +00:00
Reid Spencer
321f8319da Add #include <iostream> since Value.h doesn't include it any more.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14624 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-04 12:22:14 +00:00
John Criswell
bf6b5d0dbd Configure script for ModuleMaker.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10216 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-25 20:02:07 +00:00
John Criswell
02af846a91 Auto-confed ModuleMaker.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10215 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-25 19:59:59 +00:00
John Criswell
27bf6376da Auto-conf'ed the ModuleMaker code.
Moved Makefile.common to Makefile.common.in.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10214 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-25 19:59:21 +00:00
Brian Gaeke
d0fde30ce8 Put all LLVM code into the llvm namespace, as per bug 109.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9903 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-11 22:41:34 +00:00
John Criswell
e26ba9fb3f Added LLVM copyrights to Makefiles.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9313 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 22:28:01 +00:00
John Criswell
a37fefd064 Checkin of autoconf-style object root.
Modified Makefiles to use the new Makefile setup in LLVM.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8380 91177308-0d34-0410-b5e6-96231b3b80d8
2003-09-06 15:03:24 +00:00
Chris Lattner
9534acbf77 Initial checkin
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8039 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-21 22:33:59 +00:00
Chris Lattner
8ca0eebe4e Initial checkin of ModuleMaker project
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8036 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-21 22:29:52 +00:00