Commit graph

2761 commits

Author SHA1 Message Date
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
David Nadlinger
11619e55a9 Fix miscompilation of some functions returning structs. 2012-10-14 03:41:15 +02:00
kai
b50c6a8026 Look for configuration file in folder etc relative to executable.
Fixes issue #195.
2012-10-14 00:25:08 +02:00
kai
83d14c54da Explicit call conversion operator on Setting class.
This fixes issue #196.
2012-10-13 19:48:13 +02:00
kai
a7c7b514c0 Add changes for LLVM 3.2
- The Attributes class was changed again
- TargetData was renamed to DataLayout

Compiles again with LLVm 3.0, 3.1 and trunk(3.2).
2012-10-13 18:54:42 +02:00
David Nadlinger
d523be3010 Added explanation for commit 9b80037.
Such uncommented changes to the frontend are potentially a huge
source of confusion during merging new frontend versions
(especially if the piece of code gets changed again before the
next upstream release).
2012-10-13 18:20:56 +02:00
David Nadlinger
a9e151ee1f Mitigate a nested unions crash/wrong code bug.
This fixes the std.format unit tests for assertion-enabled
LLVM builds.

What the actual solution for the problem should be depends
entirely on the outcome of the "Nested Unions?" discussion
on dmd-internals.
2012-10-13 18:15:13 +02:00
Kai Nacke
9772270f60 Merge pull request #190 from redstar/issue8675
Fix Issue 8675 - Nothrow can't throw Errors
2012-10-13 04:12:24 -07:00
Jernej Krempuš
f6cd185701 Generate gccbuiltins.di at build time.
Bug fixes.

Moved gen_gccbuiltins.cpp to util and renamed gccbuiltins.di to gccbuiltins_x86.di

Trying to fix Travis build.

Removed cstrVec.
2012-10-13 13:01:03 +02:00
Alexander Tankeev
34f6babcc3 Build LLVM bytecode libraries correctly
- BUILD_BC_LIBS option of CMake respects BUILD_SINGLE_LIB option.

    - Build Phobos as LLVM bytecode as part of BUILD_BC_LIBS option.
2012-10-12 20:23:52 +04:00
Alexander Tankeev
bd0185ab1d Refactoring feature of LDC runtime building as LLVM bytecode library
This refactoring required to make possible BUILD_BC_LIBS option work
together with options like BUILD_SINGLE_LIB and to build Phobos as
LLVM bytecode too.

    - libdruntime-rt-ldc can be built as LLVM bytecode library. This feature
    was commented out because of currently irrelevant reason.

    - Removed irrelevant modifications of native code library content inside
    BUILD_BC_LIBS logic.

    - Decoupled BUILD_BC_LIBS logic from basic runtime building logic.
2012-10-12 20:22:53 +04:00
kai
9b80037f56 fix Issue 8675 - Nothrow can't throw Errors
- fixed by checking whether the thrown exception is derived
  from Error before complaining about uncaught throws
2012-10-09 06:43:20 +02:00
David Nadlinger
0777102e9d Workaround for --help output being truncated when redirecting to file. 2012-10-07 15:08:24 +02:00
David Nadlinger
9c3bb1ecd3 LDMD: Remove DMD-only options from help output. 2012-10-07 14:58:30 +02:00
David Nadlinger
8118c846af Fixed unlisted contract parameter issue.
Thanks to alexrp for mentioning it.
2012-10-07 14:58:01 +02:00
David Nadlinger
051cd7302e Fixed two issues with nested functions as template alias parameters.
Fixes #131 (GitHub).
2012-10-07 03:06:07 +02:00