Thu, 05 Mar 2009 18:33:20 +0100 |
Tomas Lindquist Olsen |
Fixed lazy arguments again.
|
Wed, 04 Mar 2009 23:17:32 +0100 |
Frits van Bommel |
Fix hasUnalignedFields(): take static arrays into account too.
|
Wed, 04 Mar 2009 23:06:23 +0100 |
Frits van Bommel |
Fix bug in default implementation of ABIRewrite::getL.
|
Wed, 04 Mar 2009 17:24:25 +0100 |
Tomas Lindquist Olsen |
Updated ABI handling to be more flexible with regard to reusing lvalues and allocating fewer temporaries.
|
Wed, 04 Mar 2009 16:13:16 +0100 |
Tomas Lindquist Olsen |
Added some documentation for the IrFuncTyArg structure, which is key to writing ABI transformations.
|
Tue, 03 Mar 2009 21:20:20 +0100 |
Tomas Lindquist Olsen |
Fixed inreg attribute to no longer overwrite sign/zeroext.
|
Tue, 03 Mar 2009 19:47:39 +0100 |
Tomas Lindquist Olsen |
Updated lifetime.d with a 32bit faster codepath for overflow checks.
|
Tue, 03 Mar 2009 19:37:47 +0100 |
Tomas Lindquist Olsen |
Removed inline asm for overflow checking in runtime that wasn't working.
|
Tue, 03 Mar 2009 19:27:23 +0100 |
Tomas Lindquist Olsen |
remove memory clobber again ...
|
Tue, 03 Mar 2009 19:18:47 +0100 |
Tomas Lindquist Olsen |
Added ~{memory} clobber when a jump_target is generated in inline asm (branch out of inline asm)
|
Tue, 03 Mar 2009 19:03:27 +0100 |
Christian Kamm |
Move more tests to D_InlineAsm
|
Tue, 03 Mar 2009 18:26:39 +0100 |
Christian Kamm |
Adjust mini tests to use D_InlineAsm
|
Tue, 03 Mar 2009 17:44:56 +0100 |
Christian Kamm |
Switch LLVM_InlineAsm -> D_InlineAsm. It's for real this time, hopefully.
|
Tue, 03 Mar 2009 17:38:08 +0100 |
Christian Kamm |
Remove unused defines: X86_REVERSE_PARAMS, X86_PASS_IN_EAX
|
Tue, 03 Mar 2009 17:27:14 +0100 |
Tomas Lindquist Olsen |
Fixed potential assertion failure in taking address of function as a constant expression.
|
Tue, 03 Mar 2009 17:21:35 +0100 |
Tomas Lindquist Olsen |
Disabled some extensive LLVM value logging with -vv that dramatically increases -vv output length for little value.
|
Tue, 03 Mar 2009 15:08:26 +0100 |
Tomas Lindquist Olsen |
Added hasUnalignedFields helper to check if a type has unaligned fields - as per request from fvbommel. Result is cached in TypeStruct.
|
Tue, 03 Mar 2009 14:10:37 +0100 |
Tomas Lindquist Olsen |
Merged ABI changes into D2 frontend.
|
Tue, 03 Mar 2009 09:51:15 +0100 |
Frits van Bommel |
Oops, merge with mainline and actually push this time...
|
Sun, 01 Mar 2009 22:59:03 +0100 |
Frits van Bommel |
Pass -m32/-m64 on to gcc when assembling and linking
|
Tue, 03 Mar 2009 04:41:11 +0100 |
Tomas Lindquist Olsen |
Fixed #218 by disabling the problematic optimization.
|
Tue, 03 Mar 2009 02:51:21 +0100 |
Tomas Lindquist Olsen |
Abstracted more (most) ABI details out of the normal codegen.
|
Sun, 01 Mar 2009 22:40:15 +0100 |
Tomas Lindquist Olsen |
Fixed find alt script.
|
Sun, 01 Mar 2009 22:27:37 +0100 |
Tomas Lindquist Olsen |
Added script to find the alternative triple of the host.
|
Sun, 01 Mar 2009 22:27:03 +0100 |
Tomas Lindquist Olsen |
Implemented basic -m32 and -m64 options.
|
Sun, 01 Mar 2009 20:22:10 +0100 |
Tomas Lindquist Olsen |
Remember to set asm type back to void and n=0 when rewriting to sret asm return.
|
Sun, 01 Mar 2009 19:06:47 +0100 |
Tomas Lindquist Olsen |
Removed some code that wasn't supposed to be in last commit!
|
Sun, 01 Mar 2009 19:01:05 +0100 |
Tomas Lindquist Olsen |
- Fixed x86-32 C ABI for complex number return values.
|
Sun, 01 Mar 2009 11:04:05 +0100 |
Frits van Bommel |
Remove Tango patch that's been applied upstream.
|
Sat, 28 Feb 2009 18:17:45 -0700 |
Kelly Wilson |
Just forgot an opcode for x64
|
Sun, 01 Mar 2009 01:34:20 +0100 |
Tomas Lindquist Olsen |
Same fix for align size of void type on D2.
|
Sun, 01 Mar 2009 01:33:08 +0100 |
Tomas Lindquist Olsen |
Fixed alignsize for void types. (it's one byte)
|
Sat, 28 Feb 2009 22:16:52 +0100 |
Frits van Bommel |
Use llvm::CallSite instead of custom CallOrInvoke class.
|
Sat, 28 Feb 2009 19:58:30 +0100 |
Christian Kamm |
Error gracefully for +=, -=, *=, /= if rhs is complex but lhs isn't.
|
Sat, 28 Feb 2009 17:44:53 +0100 |
Frits van Bommel |
Apply previous changes to dmd2/mtype.c as well.
|
Sat, 28 Feb 2009 17:35:45 +0100 |
Frits van Bommel |
Automated merge with http://hg.dsource.org/projects/ldc
|
Sat, 28 Feb 2009 16:09:44 +0100 |
Frits van Bommel |
Use LLVM alignment data instead of hand-picked.
|
Sat, 28 Feb 2009 16:09:35 +0100 |
Frits van Bommel |
Preparation for next patch. Don't ask about why this is needed.
|
Sat, 28 Feb 2009 15:06:09 +0100 |
Christian Kamm |
Readded indentation that got lost in the dmd/mars.c -> gen/main.cpp move.
|
Sat, 28 Feb 2009 13:48:49 +0100 |
Christian Kamm |
Fix alignment info of cdouble, cfloat. They align the same as double, float now.
|
Sat, 28 Feb 2009 09:06:25 +0100 |
Christian Kamm |
Don't reset gTargetData after compiling a module. Fixes segfault when
|
Fri, 27 Feb 2009 19:41:25 +0100 |
Frits van Bommel |
Remove initialization of padding of reals, ireals and creals.
|
Fri, 27 Feb 2009 12:35:31 +0100 |
Frits van Bommel |
Fix struct field alignment on x86-64 (for align > 8, like real.alignof)
|
Thu, 26 Feb 2009 23:35:39 +0100 |
Frits van Bommel |
Fix cfloat return on x86_64: only perform ABI transformation for non-extern(D)
|
Thu, 26 Feb 2009 22:47:06 +0100 |
Frits van Bommel |
Implement support for intrinsics returning struct types
|
Thu, 26 Feb 2009 18:43:25 +0100 |
Tomas Lindquist Olsen |
Fixed druntime lib path in ldc2.conf.in, thanks Matt
|
Thu, 26 Feb 2009 18:28:50 +0100 |
Tomas Lindquist Olsen |
Added some missing version identifiers.
|
Thu, 26 Feb 2009 18:02:13 +0100 |
Tomas Lindquist Olsen |
Fixed debug info for globals in D2.
|
Thu, 26 Feb 2009 15:51:19 +0100 |
Tomas Lindquist Olsen |
Missing %s error param in main.cpp
|
Thu, 26 Feb 2009 15:23:52 +0100 |
Frits van Bommel |
Don't crash if we don't know what ABI to use. Assume some defaults instead.
|
Thu, 26 Feb 2009 14:51:05 +0100 |
Frits van Bommel |
Fix some -vv output
|
Thu, 26 Feb 2009 14:51:02 +0100 |
Frits van Bommel |
Use LLVM OStream wrapper instead of <iostream> in the logger.
|
Thu, 26 Feb 2009 15:24:20 +0100 |
Tomas Lindquist Olsen |
Fixed const/invariant struc/class fields of the form const int i = 4; they don't add a field.
|
Thu, 26 Feb 2009 14:49:32 +0100 |
Frits van Bommel |
Fix dstress runner to use ldmd
|
Thu, 26 Feb 2009 14:48:47 +0100 |
Frits van Bommel |
Fix x86_64 cfloat support to work on intended target :)
|
Thu, 26 Feb 2009 14:23:18 +0100 |
Tomas Lindquist Olsen |
oups, seems like I broke some constness in D1 last commit, compiles again!
|
Thu, 26 Feb 2009 14:13:27 +0100 |
Tomas Lindquist Olsen |
Forgot new files that were supposed to be in last commit.
|
Thu, 26 Feb 2009 14:11:49 +0100 |
Tomas Lindquist Olsen |
- Fixed LLVM style CL args for D2.
|
Wed, 25 Feb 2009 19:30:06 +0100 |
Frits van Bommel |
Call llvm_shutdown when shutting down the backend.
|
Wed, 25 Feb 2009 17:34:51 +0100 |
Frits van Bommel |
Use LLVM-style command line (instead of DMD-style)
|
Thu, 19 Feb 2009 13:51:44 +0100 |
Frits van Bommel |
Clean up regexes in .hgignore, making it more strict.
|
Thu, 19 Feb 2009 13:50:05 +0100 |
Frits van Bommel |
Removing ldc.conf. (IMPORTANT: run 'cmake .' after pull)
|
Thu, 19 Feb 2009 11:01:34 +0100 |
Frits van Bommel |
Fix out-ouf-source build for runtime as well.
|
Thu, 19 Feb 2009 00:50:35 +0100 |
Frits van Bommel |
Add explicit paths to revisions.* to unbreak out-of-source build.
|
Wed, 18 Feb 2009 23:18:34 +0100 |
Frits van Bommel |
Update some testcases now that 64-bit immediates are working.
|
Wed, 18 Feb 2009 22:50:22 +0100 |
Frits van Bommel |
Clean up the code generated when jumping out of inline asm and make label names more expressive.
|
Wed, 18 Feb 2009 21:46:14 +0100 |
Frits van Bommel |
Fix some assembler issues:
|
Wed, 18 Feb 2009 03:38:12 +0100 |
Frits van Bommel |
Fix a latent bug in the asm code.
|
Tue, 17 Feb 2009 23:14:19 +0100 |
Frits van Bommel |
Update .hgignore due to moved(?) idgen/impcnvgen locations.
|
Tue, 17 Feb 2009 19:08:38 +0100 |
Christian Kamm |
Fix for fix from [974].
|
Tue, 17 Feb 2009 18:57:11 +0100 |
Christian Kamm |
Fix #217. getInternalTypeInfo doesn't work with LDC.
|
Tue, 17 Feb 2009 18:53:15 +0100 |
Christian Kamm |
Allow 'return exp;' for void main().
|
Tue, 17 Feb 2009 18:25:34 +0100 |
Christian Kamm |
Fix #216 by implementing TypeExp::toElem. It just provides the appropriate
|
Tue, 17 Feb 2009 01:13:18 +0100 |
Frits van Bommel |
Change the way the version is printed (more verbose, with short hash)
|
Tue, 17 Feb 2009 00:08:20 +0100 |
Frits van Bommel |
Fix the problems exposed by the callingconv1.d test case.
|
Mon, 16 Feb 2009 23:56:56 +0100 |
Frits van Bommel |
Revert wilsonk's "fix" for the callingconv1.d problem.
|
Mon, 16 Feb 2009 23:56:56 +0100 |
Frits van Bommel |
Add some extra debug output that's useful in diagnosing inline assembler bugs.
|
Mon, 16 Feb 2009 19:31:10 +0100 |
Frits van Bommel |
Fix {,w,d}char handling in tests/mini/vararg6.d:print()
|
Mon, 16 Feb 2009 19:17:15 +0100 |
Christian Kamm |
Fix test on x86-32.
|
Mon, 16 Feb 2009 18:27:33 +0100 |
Christian Kamm |
Reduce size of integer constant make x86-64 asm parsing code compile on x86-32.
|
Sun, 15 Feb 2009 23:09:53 -0700 |
Kelly Wilson |
Merging fvbommels fix for asm8.d x86-64 code
|
Mon, 16 Feb 2009 01:43:14 +0100 |
Frits van Bommel |
Some changes I missed in my last commit (wound up in wrong patch file)
|
Sun, 15 Feb 2009 22:56:10 -0700 |
Kelly Wilson |
Fix for tests/mini/callingconv1.d
|
Sun, 15 Feb 2009 16:30:15 -0700 |
Kelly Wilson |
Fix 32 bit truncation of 'asm { movq RAX, 0xAA_1234_5678; }'...ie. move constant larger than 32 bits
|
Sun, 15 Feb 2009 16:26:12 -0700 |
Kelly Wilson |
Fix shl/r bad operand size error
|
Sun, 15 Feb 2009 21:44:03 +0100 |
Christian Kamm |
Add OSX version declaration for Mac OS X to improve dmd-mac compatibility.
|
Sun, 15 Feb 2009 18:04:22 +0100 |
Frits van Bommel |
Implement implicit return after inline asm on x86_64
|
Sun, 15 Feb 2009 14:54:36 +0100 |
Christian Kamm |
Static ctors/dtors added via template mixins should not be added to modules
|
Sun, 15 Feb 2009 14:50:33 +0100 |
Christian Kamm |
Backed out changeset [369996c08420].
|
Sun, 15 Feb 2009 11:46:28 +0100 |
Christian Kamm |
Change the numbering of static ctors/dtors to be module based instead of being global.
|
Sat, 14 Feb 2009 21:18:47 +0100 |
Christian Kamm |
Make sure debug info uses the right compilation units - in particular the
|
Sat, 14 Feb 2009 15:25:48 +0100 |
Tomas Lindquist Olsen |
Added support for using a temporary to implement emulated ABI return from inline asm, could be easier to use, but I think this will do. It's so extremely target dependent in any case that doing a completely generic approach seems hard.
|
Fri, 13 Feb 2009 22:20:30 +0100 |
Tomas Lindquist Olsen |
Merged a bunch recent dmd v1 frontend changes into the dmd v2 tree.
|
Thu, 12 Feb 2009 18:39:14 +0100 |
Christian Kamm |
Automated merge with http://hg.dsource.org/projects/ldc
|
Thu, 12 Feb 2009 18:39:03 +0100 |
Christian Kamm |
Now that we're using LLVM 2.5, we can stop always running the
|
Wed, 11 Feb 2009 08:32:33 -0700 |
Kelly Wilson |
Revert return value swapping on x86_64
|
Tue, 10 Feb 2009 08:02:25 -0700 |
wilsonk |
changes to get the naked asm stuff working for x64
|
Sun, 08 Feb 2009 21:44:46 +0100 |
Christian Kamm |
Revert templates to old behavior.
|
Sun, 08 Feb 2009 18:51:32 +0100 |
Christian Kamm |
Switch some getModule to getCompilationModule to make sure templates are
|
Sun, 08 Feb 2009 16:50:22 +0100 |
Christian Kamm |
Mostly rewrite debug info generation in terms of llvm/Analysis/DebugInfo.h.
|
Sun, 08 Feb 2009 05:26:54 +0100 |
Tomas Lindquist Olsen |
SWITCHED TO LLVM 2.5 !
|
Sun, 08 Feb 2009 05:14:24 +0100 |
Tomas Lindquist Olsen |
Fixed accessing function symbols from inline asm.
|
Thu, 05 Feb 2009 18:17:42 +0100 |
Tomas Lindquist Olsen |
Reverted the template instantiation changes from rev [940]. Wasn't safe it seems :(
|
Wed, 04 Feb 2009 20:47:27 +0100 |
Tomas Lindquist Olsen |
Reverted back to the LLVM_InlineAsm_X86 versions, a few more things still needs to be sorted out first.
|
Wed, 04 Feb 2009 18:51:11 +0100 |
Christian Kamm |
LDC should follow the D ABI now. Switch back from LLVM_InlineAsm_X86 to
|
Wed, 04 Feb 2009 18:48:03 +0100 |
Tomas Lindquist Olsen |
Changed the way LDC determines if a template instantiation needs to get a definition, seems to speed up compile times quite a bit in some cases.
|
Wed, 04 Feb 2009 18:39:39 +0100 |
Christian Kamm |
Automated merge with http://hg.dsource.org/projects/ldc
|
Wed, 04 Feb 2009 18:39:33 +0100 |
Christian Kamm |
Convert struct arg to integer when passing inreg to make sure LLVM doesn't
|
Wed, 04 Feb 2009 16:02:05 +0100 |
Tomas Lindquist Olsen |
Fixed warning on osx as per request from mwarning.
|
Wed, 04 Feb 2009 02:10:23 +0100 |
Tomas Lindquist Olsen |
Removed some dead code.
|
Tue, 03 Feb 2009 17:27:01 -0700 |
wilsonk |
Fixed an accidental code removal for osx
|
Wed, 04 Feb 2009 00:50:04 +0100 |
Tomas Lindquist Olsen |
Fixed problem with static ctors, in templated imported classes, not begin run. Fixes #203
|
Wed, 04 Feb 2009 00:04:09 +0100 |
Tomas Lindquist Olsen |
Replace assertion with errormessage for unsupported calling conventions. like Pascal. See dstress/run/e/extern_10_A.d
|
Tue, 03 Feb 2009 23:48:47 +0100 |
Tomas Lindquist Olsen |
Fixed dstress/run/a/array_initialization_17_A.d regression. default initialized static array elements in a constant static array initializer was getting incorrect values.
|
Tue, 03 Feb 2009 21:46:54 +0100 |
Christian Kamm |
Automated merge with http://hg.dsource.org/projects/ldc
|
Tue, 03 Feb 2009 21:46:46 +0100 |
Christian Kamm |
Follow the D ABI and pass the last arg in a register if it is a struct that fits.
|
Tue, 03 Feb 2009 12:43:03 -0700 |
wilsonk |
Changed this file to add 'naked' and a couple other missing instructions
|
Tue, 03 Feb 2009 12:35:00 -0700 |
wilsonk |
Added X86-64 version. Needed significant changes.
|
Tue, 03 Feb 2009 12:34:12 -0700 |
wilsonk |
Added X86-64 versioning
|
Tue, 03 Feb 2009 12:33:42 -0700 |
wilsonk |
Added X86-64 version
|