Matthias Braun [Fri, 16 Jan 2009 15:14:14 +0000 (15:14 +0000)]
min and max are no more
[r25220]
Matthias Braun [Fri, 16 Jan 2009 14:47:58 +0000 (14:47 +0000)]
fix warning
[r25219]
Sebastian Buchwald [Thu, 15 Jan 2009 12:07:10 +0000 (12:07 +0000)]
PBQP transformer doesn't support Mux nodes with constant values.
[r25205]
Michael Beck [Wed, 14 Jan 2009 15:14:14 +0000 (15:14 +0000)]
- add support for statistics and merge debug info
[r25195]
Michael Beck [Wed, 14 Jan 2009 15:12:24 +0000 (15:12 +0000)]
- add support for cond_eval statistics
[r25194]
Michael Beck [Wed, 14 Jan 2009 15:10:13 +0000 (15:10 +0000)]
- fixed signed/unsigned warning
[r25193]
Michael Beck [Wed, 14 Jan 2009 02:34:51 +0000 (02:34 +0000)]
- recode r25185 "the Firm way"
[r25188]
Moritz Kroll [Wed, 14 Jan 2009 00:31:40 +0000 (00:31 +0000)]
Conv(X) & all_one(mode(X)) = Conv(X)
[r25185]
Christoph Mallon [Tue, 13 Jan 2009 15:10:28 +0000 (15:10 +0000)]
Resolve warning.
[r25176]
Christoph Mallon [Tue, 13 Jan 2009 12:49:02 +0000 (12:49 +0000)]
Correct documentation of return value.
[r25168]
Matthias Braun [Tue, 13 Jan 2009 12:07:02 +0000 (12:07 +0000)]
fix warnings
[r25164]
Matthias Braun [Tue, 13 Jan 2009 12:03:14 +0000 (12:03 +0000)]
make get_entity_irg return NULL for non methods as documented in typerep.h
[r25163]
Michael Beck [Sat, 10 Jan 2009 05:29:40 +0000 (05:29 +0000)]
- do cheap tests first
[r25140]
Michael Beck [Sat, 10 Jan 2009 05:15:45 +0000 (05:15 +0000)]
- removed useless be_req_t which was a wrapper around an arch_register_req_t
[r25139]
Matthias Braun [Fri, 9 Jan 2009 14:21:40 +0000 (14:21 +0000)]
fix alignment for float constants
[r25135]
Matthias Braun [Fri, 9 Jan 2009 14:21:10 +0000 (14:21 +0000)]
more verbose panis
[r25134]
Matthias Braun [Fri, 9 Jan 2009 14:20:15 +0000 (14:20 +0000)]
bring arm back to a working state
[r25133]
Christoph Mallon [Fri, 9 Jan 2009 11:48:16 +0000 (11:48 +0000)]
Remove unused variable.
[r25130]
Michael Beck [Fri, 9 Jan 2009 03:53:29 +0000 (03:53 +0000)]
- propagate r23142 changes to all backends
[r25129]
Michael Beck [Fri, 9 Jan 2009 03:45:57 +0000 (03:45 +0000)]
rename create_Immediate() into ia32_create_Immediate()
[r25128]
Michael Beck [Thu, 8 Jan 2009 18:10:19 +0000 (18:10 +0000)]
- small cleanup
[r25127]
Michael Beck [Thu, 8 Jan 2009 18:02:18 +0000 (18:02 +0000)]
-small cleanup
[r25126]
Michael Beck [Thu, 8 Jan 2009 18:01:41 +0000 (18:01 +0000)]
- removed orphan declarations
[r25125]
Moritz Kroll [Mon, 5 Jan 2009 23:06:50 +0000 (23:06 +0000)]
Fixed debug info for defaultProj
[r25090]
Michael Beck [Sat, 3 Jan 2009 04:48:20 +0000 (04:48 +0000)]
- add intrinsic lowerer for strcpy(), mempcpy(), memmove(), strncmp()
[r25072]
Michael Beck [Sat, 3 Jan 2009 02:37:44 +0000 (02:37 +0000)]
- BugFix: not all users of the frame are Sel nodes (now all cases fixed)
[r25069]
Michael Beck [Fri, 2 Jan 2009 21:52:03 +0000 (21:52 +0000)]
- BugFix: not all users of the frame are Sel nodes
This fixes
20030811-1.c from gcc-torture
[r25067]
Michael Beck [Fri, 2 Jan 2009 16:47:18 +0000 (16:47 +0000)]
- add alignment of stack parameter to be parameters set
[r25054]
Michael Beck [Fri, 2 Jan 2009 15:03:50 +0000 (15:03 +0000)]
Hopefully the last fix to the value type stuff:
if an address of a register parameter is taken, create immediately a backing store
instead of moving it from the argument type (where it might not exist if no
value type was built)
[r25051]
Michael Beck [Fri, 2 Jan 2009 14:01:13 +0000 (14:01 +0000)]
- implement the same value parameter type lowering for lower_calls (although
most parts was already here)
- only remap Sel if we change the value parameter type in lower_dw.c
[r25047]
Michael Beck [Fri, 2 Jan 2009 05:16:55 +0000 (05:16 +0000)]
- add some early assert() debugging helper
[r25034]
Michael Beck [Fri, 2 Jan 2009 05:15:11 +0000 (05:15 +0000)]
- correct lowering of the the value parameter type helps beabi ...
[r25033]
Christoph Mallon [Tue, 30 Dec 2008 16:38:57 +0000 (16:38 +0000)]
Remove ununsed variable.
[r24986]
Michael Beck [Tue, 30 Dec 2008 15:35:42 +0000 (15:35 +0000)]
- BugFix: do NOT destroy the value_param type, cparser merges the type
of functions if possible: this fixes abi_null_mode_proj
- put more things into environment, so lesser calls are needed
[r24985]
Christoph Mallon [Mon, 29 Dec 2008 19:36:47 +0000 (19:36 +0000)]
Remove write-only bitset.
[r24958]
Christoph Mallon [Mon, 29 Dec 2008 18:35:13 +0000 (18:35 +0000)]
Put braces at function start on new line.
[r24954]
Michael Beck [Mon, 29 Dec 2008 02:16:45 +0000 (02:16 +0000)]
- implemented ia32 inport, outport for ir_bk_(in|out)port
[r24938]
Michael Beck [Mon, 29 Dec 2008 01:12:51 +0000 (01:12 +0000)]
- add ir_bk_outport and ir_bk_inport
[r24937]
Michael Beck [Fri, 26 Dec 2008 04:07:58 +0000 (04:07 +0000)]
Reimplement the "fp result returned in st0 code":
The old code was fundamental broken, because it
- changes the cls of a node WITHOUT changing a following be_Keep
- produced the xmm0 reload BEFORE the Keep -> both nodes define xmm0
The new code handles some simple cases even more gracefully.
[r24897]
Michael Beck [Fri, 26 Dec 2008 04:03:55 +0000 (04:03 +0000)]
- only use immediate mode_E if x87 unit is used
[r24896]
Moritz Kroll [Thu, 25 Dec 2008 22:03:24 +0000 (22:03 +0000)]
Make get_idx_irn(irg, idx) public (useful for debugging purposes)
[r24894]
Michael Beck [Thu, 25 Dec 2008 03:59:56 +0000 (03:59 +0000)]
- removed strange add_irn_dep(get_irg_end(cg->irg), res)
in create_const(): DO NOT RESTORE it without a meaningfull comment
what for this is needed
[r24892]
Michael Beck [Thu, 25 Dec 2008 03:57:57 +0000 (03:57 +0000)]
- add missing ir_bk_debugbreak case
[r24891]
Christoph Mallon [Wed, 24 Dec 2008 22:31:16 +0000 (22:31 +0000)]
Use the global nomem instead of building a new one.
[r24890]
Christoph Mallon [Wed, 24 Dec 2008 22:29:07 +0000 (22:29 +0000)]
Remove unused variable.
[r24889]
Michael Beck [Wed, 24 Dec 2008 18:17:18 +0000 (18:17 +0000)]
- put the nomem and noreg_GP nodes into global variables:
this should safe a huge amount of useless calls
[r24888]
Michael Beck [Wed, 24 Dec 2008 03:45:46 +0000 (03:45 +0000)]
- gcc uses UD2 for __builtin_trap()
- implemented ir_bk_debugbreak
[r24885]
Michael Beck [Wed, 24 Dec 2008 02:48:36 +0000 (02:48 +0000)]
- removed unused variable
[r24884]
Michael Beck [Tue, 23 Dec 2008 22:30:31 +0000 (22:30 +0000)]
- add builtin_(trap|bswap)
[r24882]
Christoph Mallon [Tue, 23 Dec 2008 22:22:55 +0000 (22:22 +0000)]
Remove unused local variable.
[r24881]
Christoph Mallon [Tue, 23 Dec 2008 22:18:07 +0000 (22:18 +0000)]
Use the register mode when transforming ASM projs.
[r24880]
Christoph Mallon [Tue, 23 Dec 2008 19:35:28 +0000 (19:35 +0000)]
Simplify generating the extend suffix for ia32_Load.
[r24879]
Christoph Mallon [Tue, 23 Dec 2008 18:47:26 +0000 (18:47 +0000)]
- BSF/BSR cannot do 16 bit AM in our model, because they only set the lower 16 bits of the destination register then.
- Rename gen_unop_dest() to gen_unop_AM().
[r24876]
Christoph Mallon [Tue, 23 Dec 2008 18:37:14 +0000 (18:37 +0000)]
Let the emitter generator generate fewer calls.
[r24875]
Christoph Mallon [Tue, 23 Dec 2008 18:35:46 +0000 (18:35 +0000)]
Make generated code for ia32 %ME a bit more pretty.
[r24874]
Michael Beck [Tue, 23 Dec 2008 17:33:09 +0000 (17:33 +0000)]
- Lea does not like x, const so replaced by Add
[r24870]
Michael Beck [Tue, 23 Dec 2008 17:11:14 +0000 (17:11 +0000)]
- implemented __builtin_(ffs|ctz|clz|popcount|parity)
[r24867]
Christoph Mallon [Tue, 23 Dec 2008 15:18:35 +0000 (15:18 +0000)]
Let the backend generator scripts emit \t instead of literal tabs.
[r24862]
Michael Beck [Sun, 21 Dec 2008 14:57:43 +0000 (14:57 +0000)]
- corrected SSE prefetch instructions
[r24837]
Christoph Mallon [Sun, 21 Dec 2008 14:23:35 +0000 (14:23 +0000)]
Fix emit_ia32_ClimbFrame(): Source is left, destination is right.
[r24835]
Michael Beck [Sun, 21 Dec 2008 14:09:59 +0000 (14:09 +0000)]
- forgot to remove the early check
[r24832]
Michael Beck [Sun, 21 Dec 2008 14:07:14 +0000 (14:07 +0000)]
- gcc ignores RW==1 for non 3DNow!
[r24830]
Michael Beck [Sun, 21 Dec 2008 13:47:39 +0000 (13:47 +0000)]
- implemented __builtin_prefetch in ia32 BE
- add athlon_old for athlons WITHOUT SSE
[r24829]
Michael Beck [Fri, 19 Dec 2008 15:03:36 +0000 (15:03 +0000)]
- implemented ia32_ClimbFrame() pseudo-instruction
- fully implemented __builtin_(frame|return)_address in the backend
[r24812]
Michael Beck [Fri, 19 Dec 2008 15:00:57 +0000 (15:00 +0000)]
- fixed CSE and Combo for Builtin nodes
[r24811]
Michael Beck [Thu, 18 Dec 2008 18:19:51 +0000 (18:19 +0000)]
- implemented __builtin_return_address(0)
[r24793]
Michael Beck [Thu, 18 Dec 2008 18:18:47 +0000 (18:18 +0000)]
- do not use tuple result for builtins, not needed yet
[r24792]
Michael Beck [Thu, 18 Dec 2008 17:38:10 +0000 (17:38 +0000)]
- more simplification in skip_Tuple
[r24791]
Michael Beck [Thu, 18 Dec 2008 17:36:54 +0000 (17:36 +0000)]
- always skip tuple, its useless to prevent that
[r24790]
Michael Beck [Thu, 18 Dec 2008 15:31:11 +0000 (15:31 +0000)]
- implemented Builtin node to represent builtins ...
[r24785]
Michael Beck [Wed, 17 Dec 2008 15:08:46 +0000 (15:08 +0000)]
- removed useless end -> node dependency
[r24754]
Matthias Braun [Mon, 15 Dec 2008 13:02:28 +0000 (13:02 +0000)]
remove duplicated macros
[r24687]
Michael Beck [Mon, 15 Dec 2008 12:20:32 +0000 (12:20 +0000)]
- renamed cons_flags to ir_cons_flags
[r24681]
Michael Beck [Mon, 15 Dec 2008 12:18:50 +0000 (12:18 +0000)]
- fixed warning
[r24680]
Moritz Kroll [Sun, 14 Dec 2008 10:52:07 +0000 (10:52 +0000)]
Added cons_flags parameter to new_Load and new_Store functions for volatility, alignment and pin state
[r24655]
Christoph Mallon [Sat, 13 Dec 2008 23:15:05 +0000 (23:15 +0000)]
Fix generating bit representation of INF modes with explicit one, i.e. x87 long double.
[r24637]
Michael Beck [Sat, 13 Dec 2008 22:46:17 +0000 (22:46 +0000)]
- BugFix: the mode of a Load must be its load_mode, else a Byte load would be congruent a float load (which is true to some extend but not we want to handle here)
- BugFix: two Blocks are never congruent: this cannot be detected by combo either and fixed the IJmp predecessor problem of combo_load_mode.c
[r24633]
Christoph Mallon [Sat, 13 Dec 2008 22:20:39 +0000 (22:20 +0000)]
Fix tarval_mod() for negative dividend.
[r24632]
Matthias Braun [Sat, 13 Dec 2008 22:04:02 +0000 (22:04 +0000)]
oops set_entity_align did not what it appeared to do
[r24630]
Michael Beck [Sat, 13 Dec 2008 21:38:14 +0000 (21:38 +0000)]
- C99 feature removed
- fixed an FIXME
[r24629]
Sebastian Buchwald [Sat, 13 Dec 2008 20:45:12 +0000 (20:45 +0000)]
Ignore End keeps.
[r24628]
Matthias Braun [Sat, 13 Dec 2008 19:06:54 +0000 (19:06 +0000)]
align mode_E konstants at 16 bytes
[r24619]
Matthias Braun [Sat, 13 Dec 2008 18:59:51 +0000 (18:59 +0000)]
redefine mode_E to 96 bits
[r24618]
Matthias Braun [Sat, 13 Dec 2008 18:23:51 +0000 (18:23 +0000)]
some adjustment to float convs (skip some strictconvs when no_fold_const is not set, but always strict conv in int->float converstion)
[r24617]
Matthias Braun [Sat, 13 Dec 2008 18:08:33 +0000 (18:08 +0000)]
fix new_Block users
[r24615]
Matthias Braun [Sat, 13 Dec 2008 17:58:30 +0000 (17:58 +0000)]
new_Block should not set curr_block too
[r24610]
Matthias Braun [Sat, 13 Dec 2008 17:56:13 +0000 (17:56 +0000)]
introduce fp_no_float_fold flag for frontends which do not query the backends float arithmetic mode yet
[r24609]
Matthias Braun [Sat, 13 Dec 2008 17:11:45 +0000 (17:11 +0000)]
backend can report back float point arithmetic mode
[r24603]
Christoph Mallon [Sat, 13 Dec 2008 16:58:29 +0000 (16:58 +0000)]
Next attempt in fixing tarval float->int conversion.
[r24602]
Christoph Mallon [Sat, 13 Dec 2008 16:03:42 +0000 (16:03 +0000)]
Ignore End keeps.
[r24600]
Matthias Braun [Sat, 13 Dec 2008 15:48:54 +0000 (15:48 +0000)]
fix fc_can_lossless_conv_to (I hope this is correct)
[r24599]
Matthias Braun [Sat, 13 Dec 2008 14:52:12 +0000 (14:52 +0000)]
no point in first setting the wrong mode and then correcting it, set the right mode directly
[r24598]
Christoph Mallon [Sat, 13 Dec 2008 07:07:57 +0000 (07:07 +0000)]
Clean up new_const_code_irg() a bit.
[r24585]
Michael Beck [Fri, 12 Dec 2008 20:31:19 +0000 (20:31 +0000)]
- skip_Id nodes when returning the entity initializer: this should fix ldst_opt_id.c
[r24582]
Matthias Braun [Fri, 12 Dec 2008 19:15:29 +0000 (19:15 +0000)]
put bison and flex sources into the package
[r24581]
Michael Beck [Fri, 12 Dec 2008 18:29:26 +0000 (18:29 +0000)]
- do not remove keeps for now, only Bads, NoMem and doublets
[r24579]
Michael Beck [Fri, 12 Dec 2008 18:28:32 +0000 (18:28 +0000)]
- remove NoMem from keep list
[r24578]
Michael Beck [Fri, 12 Dec 2008 18:27:12 +0000 (18:27 +0000)]
- Changed wrong (and slow) implementation of fix_atsrt_block(),
the old version fails because nodes from the startblock can be kept now ...
[r24577]
Michael Beck [Fri, 12 Dec 2008 15:20:40 +0000 (15:20 +0000)]
- Do not remove keep-alives during optimize_graph_df(), kill only Bads and doublets
[r24571]
Michael Beck [Fri, 12 Dec 2008 15:19:11 +0000 (15:19 +0000)]
- implemented remove_End_Bads_and_doublets()
[r24570]