David Nadlinger
237b0f25dc
druntime '_end'/'end' updates.
...
This should fix the test suite build on Arch Linux.
2012-11-15 11:54:27 +01:00
David Nadlinger
636b37d056
D1 tests: Updated local copy of object.di.
...
The type info layout was changed in DMD; Tango already has the changes.
2012-11-11 00:42:08 +01:00
David Nadlinger
540888d6d0
Removed tautological #if block.
2012-11-11 00:32:15 +01:00
David Nadlinger
d14a869c19
Only emit a single bitcast for struct literal padding.
...
Mostly a cosmetic change.
2012-11-10 20:22:56 +01:00
David Nadlinger
5944e9cc51
Correctly zero out real padding in struct literals.
...
Fixes the std.variant unit tests on x86_64.
2012-11-10 20:11:10 +01:00
David Nadlinger
ab94a6d60c
Don't treat __ensure specially in LDC.
...
The only change here is commenting out the Id::ensure check,
the rest is just alignment of the code to upstream DMD.
2012-11-08 23:53:50 +01:00
David Nadlinger
45a3060da7
Prettied up nested context debug output.
...
The assertion is currently triggered when building the Tango/D1 unit tests.
2012-11-08 21:44:14 +01:00
David Nadlinger
7708d2e27a
Added '-vdmd' option to LDMD.
...
The name is not optimal; it has been chosen for GDC compatibility.
Thanks to Jonathan Mercier for the original patch.
2012-11-07 00:14:40 +01:00
David Nadlinger
c558f9caab
Added -disable-simplify-libcalls.
...
-disable-simplify-drtcalls was only intended to disable our
custom druntime call simplication pass for debugging purposes.
The new flag controls C runtime library calls optimizations as
performed by the LLVM pass, just as the corresponding LLVM tool
flags do.
2012-11-06 23:53:59 +01:00
David Nadlinger
03ef134aad
StripExternals only makes sense with GlobalDCE for cleanup afterwards.
2012-11-06 23:48:19 +01:00
David Nadlinger
fbd62f0532
It makes no sense to not inline alwaysinline functions.
2012-11-06 23:47:12 +01:00
David Nadlinger
b7ecd71d75
Don't run inlining semantic3's on unit test builds.
...
Fixes build of std.net.curl unit tests.
2012-11-06 23:16:50 +01:00
David Nadlinger
441419a60f
Fix unhandled switch case warning.
2012-11-06 22:53:43 +01:00
David Nadlinger
0647cfb50c
Re-enable inlining by default for -O2 and above.
...
This fixes a bug introduced in 2f78dc686 .
Thanks to Jernej (jerro) for the fix!
2012-11-06 19:40:18 +01:00
David Nadlinger
08a8f5df9b
Fixed LLVM function attribute handling.
...
Previously, set_param_attrs would overwrite any pre-existing
attributes, which is problematic, as per-function attributes are
also stored in a slot in that attribute list. This for example
lead to "noinline" being dropped for functions with inline asm.
2012-11-04 17:48:26 +01:00
David Nadlinger
f95371aeb5
Amend -verify-each description to PassManagerBuilder changes.
...
We can't verify after each pass anymore with PassManagerBuilder, but
-verify-each is a hidden flag mainly useful for debugging our own
passes anyway.
2012-11-04 00:56:36 +01:00
David Nadlinger
dbe5e97d85
Clean up optimizer command line switch descriptions.
2012-11-04 00:56:36 +01:00
David Nadlinger
2f78dc686d
Use llvm::PassManagerBuilder for optimization scheduling.
...
This commit is based on Kai's pull request #157 .
2012-11-04 00:56:36 +01:00
David Nadlinger
2e8dac5f38
Merge pull request #219 from singularpoint/master
...
More accurate building of llvm bitcode libraries
2012-11-01 13:56:11 -07:00
David Nadlinger
6bd71b0a81
Merge pull request #215 from jerro/gccbuiltin-attributes
...
Added pure, @safe and nothrow to gccbuiltins.
2012-10-24 22:06:22 -07:00
Jernej Krempuš
021f067963
Added pure, safe and nothrow to gccbuiltins.
2012-10-25 02:17:06 +02:00
kai
1423a9adb4
Add new platform AIX.
...
I have now access to a POWER7 box, so I hope to really supports this in druntime, too.
2012-10-23 08:42:16 +02:00
David Nadlinger
c67e6f137d
Merge pull request #211 from alexrp/master
...
A bunch of updates to version identifiers and platform detection.
2012-10-22 16:30:56 -07:00
alexrp
05e634c267
Check for MIPS64 when using LLVM 3.1+.
2012-10-22 20:29:27 +02:00
alexrp
a54c2cf0f6
Drop Alpha and S/390 support.
2012-10-22 20:24:16 +02:00
alexrp
b5420eb22c
A bunch of updates to version identifiers and platform detection.
2012-10-22 18:34:01 +02:00
David Nadlinger
07888f95e4
D1: Fixed accessing parameters in contracts.
...
This reverts the changes from commit f7e5245 and implements the
proper fix – in D1, contracts are treated as normal nested functions.
GitHub: Fix #138 .
2012-10-21 01:11:04 +02:00
David Nadlinger
ece5176aa9
D1: Fix Tango build.
...
'this' for methods nested in structs is now internally passed as a
pointer, even if struct this is by value in D1.
2012-10-21 01:11:04 +02:00
kai
83a7258ae4
Add address space number to getPointerSize() calls.
...
This is required for LLVM 3.2.
2012-10-20 17:49:58 +02:00
kai
fde625b33d
More changes to the Attributes class in LLVM 3.2.
2012-10-20 17:22:55 +02:00
kai
141dfa338e
Add a post build event in Visual Studio to copy the config file ldc2.conf into Debug/Release folder.
...
This is required to build druntime and phobos with msbuild and Visual Studio.
2012-10-19 22:11:31 +02:00
kai
add8e91653
Locate Intrinsics.td in CMakeLists.txt.
...
The LLVM_INCLUDE_DIR is not always defined (e.g. missing in Windows). We simply locate the file and pass the folder path to the tool.
2012-10-18 07:12:13 +02:00
David Nadlinger
7674e4292f
Fixed GitHub #204 – TableGen requires RTTI.
2012-10-17 20:36:47 +02:00
kai
434d56b4db
Fix link error on Travis Cl.
2012-10-17 08:39:41 +02:00
kai
e7d5628370
Change CMakeLists.txt to compile gen_gccbuiltins with MSVC, too.
2012-10-17 07:13:20 +02:00
kai
641f0f9964
Extend copile support for MSVC.
...
- Add an option to choose between dynamic or static library version of libconfig++
- Add an option to choose linking the runtime against dynamic or static CRT library
2012-10-17 06:56:52 +02:00
kai
79e0b53fe7
Retrieve location of gen_gccbuiltins from CMake.
...
This is required for the MSVC build because binaries are placed in a Debug or Release folder.
2012-10-15 18:32:01 +02:00
kai
657fc42221
And still more changes for LLVM 3.2
...
There were additional changes to the Attributes class.
2012-10-15 18:31:18 +02:00
kai
0ebceb4e16
Make gen_gccbuiltins compilable with LLVM 3.2.
2012-10-14 21:42:17 +02:00
kai
fb108eed12
More LLVM 3.2 changes.
2012-10-14 18:45:31 +02:00
kai
8519f448f8
Improve error message if gcc or other tools can not be found.
...
This fixes #192 .
2012-10-14 12:39:35 +02:00
David Nadlinger
95121115d3
gen_gccbuiltins cleanup.
2012-10-14 05:09:15 +02:00
David Nadlinger
b0878bf8ef
Fixed gccbuiltins module declaration.
2012-10-14 05:05:48 +02:00
David Nadlinger
4c3faa9a3d
Fixed GCC builtin header generation for out-of-source builds.
2012-10-14 05:02:42 +02:00
David Nadlinger
45365bb0ab
Merged pull request #196 from branch 'jerro/upstream-master2'.
2012-10-14 04:58:56 +02:00
David Nadlinger
3897b9331e
Travis: Directly invoke ctest for -proper -output-on-failure.
2012-10-14 04:35:23 +02:00
David Nadlinger
23e6720605
Build druntime/Phobos unit tests on make test.
2012-10-14 04:35:15 +02:00
David Nadlinger
247da8ea86
Phobos updates.
2012-10-14 04:34:17 +02:00
David Nadlinger
4b0e8d998d
Phobos updates.
2012-10-14 04:16:35 +02:00
David Nadlinger
6885f6a0f0
Phobos test suite workarounds.
2012-10-14 03:57:42 +02:00