libfirm
15 years ago- remove artifacts of old initializer implementation
Michael Beck [Sun, 23 Nov 2008 01:47:26 +0000 (01:47 +0000)]
- remove artifacts of old initializer implementation
- fixed some memory leaks

[r23913]

15 years agoMake it work, when FIRM_STATISTICS is disabled.
Christoph Mallon [Sat, 22 Nov 2008 16:46:38 +0000 (16:46 +0000)]
Make it work, when FIRM_STATISTICS is disabled.

[r23911]

15 years agoAdd missing files.
Christoph Mallon [Sat, 22 Nov 2008 11:19:45 +0000 (11:19 +0000)]
Add missing files.

[r23909]

15 years agoUpdate Makefile.am.
Christoph Mallon [Sat, 22 Nov 2008 11:07:20 +0000 (11:07 +0000)]
Update Makefile.am.

[r23908]

15 years agoUpdate installed header list.
Christoph Mallon [Sat, 22 Nov 2008 11:01:47 +0000 (11:01 +0000)]
Update installed header list.

[r23907]

15 years agoRemove unnecessary cast.
Christoph Mallon [Sat, 22 Nov 2008 07:11:03 +0000 (07:11 +0000)]
Remove unnecessary cast.

[r23906]

15 years ago- removed unused ia32_INTMAX constant
Michael Beck [Sat, 22 Nov 2008 03:18:29 +0000 (03:18 +0000)]
- removed unused ia32_INTMAX constant

[r23905]

15 years ago-removed junk
Michael Beck [Sat, 22 Nov 2008 02:55:04 +0000 (02:55 +0000)]
-removed junk

[r23904]

15 years ago- implemented ull -> float conversion for x87
Michael Beck [Sat, 22 Nov 2008 02:52:14 +0000 (02:52 +0000)]
- implemented ull -> float conversion for x87

[r23903]

15 years ago- if( -> if (
Michael Beck [Sat, 22 Nov 2008 02:51:12 +0000 (02:51 +0000)]
- if( -> if (

[r23902]

15 years ago- BugFix: do not try to free compound_graph_pathes if initializers are used
Michael Beck [Sat, 22 Nov 2008 02:50:18 +0000 (02:50 +0000)]
- BugFix: do not try to free compound_graph_pathes if initializers are used

[r23901]

15 years ago- if( -> if (
Michael Beck [Sat, 22 Nov 2008 02:49:10 +0000 (02:49 +0000)]
- if( -> if (

[r23900]

15 years ago- removed useless blocks (use of new_Const())
Michael Beck [Sat, 22 Nov 2008 01:02:04 +0000 (01:02 +0000)]
- removed useless blocks (use of new_Const())

[r23898]

15 years ago- fixed intrinsic lowerings: use Phi lists instead of links
Michael Beck [Sat, 22 Nov 2008 00:53:40 +0000 (00:53 +0000)]
- fixed intrinsic lowerings: use Phi lists instead of links

[r23897]

15 years ago- implemented firm_clear_node_and_phi_links()
Michael Beck [Sat, 22 Nov 2008 00:52:39 +0000 (00:52 +0000)]
- implemented firm_clear_node_and_phi_links()
- fixed comments: collect_phiprojs() and part_block() use phi lists

[r23896]

15 years ago- implemented float->unsigned long long lowering
Michael Beck [Fri, 21 Nov 2008 17:14:39 +0000 (17:14 +0000)]
- implemented float->unsigned long long lowering

[r23894]

15 years agoignore early clobber in ia32 asm parser (as the common backend should have handled...
Matthias Braun [Fri, 21 Nov 2008 10:20:44 +0000 (10:20 +0000)]
ignore early clobber in ia32 asm parser (as the common backend should have handled it already in theory

[r23877]

15 years ago- fixed insertion loop for the right operand
Michael Beck [Thu, 20 Nov 2008 15:13:34 +0000 (15:13 +0000)]
- fixed insertion loop for the right operand
- skip already created Confirms

[r23867]

15 years ago- improve Confirm construction: if the right argument of an confirm is not a constant,
Michael Beck [Thu, 20 Nov 2008 14:50:06 +0000 (14:50 +0000)]
- improve Confirm construction: if the right argument of an confirm is not a constant,
  construct inverse Confirms

[r23863]

15 years ago- a new and more correct tarval_carry()
Michael Beck [Thu, 20 Nov 2008 14:21:57 +0000 (14:21 +0000)]
- a new and more correct tarval_carry()

[r23859]

15 years agoFix comment.
Christoph Mallon [Wed, 19 Nov 2008 17:36:38 +0000 (17:36 +0000)]
Fix comment.

[r23823]

15 years agoAdded new_rd_Const_long to header.
Sebastian Buchwald [Wed, 19 Nov 2008 12:44:13 +0000 (12:44 +0000)]
Added new_rd_Const_long to header.

[r23813]

15 years agos/new_r_Const_long(current_ir_graph, /new_Const_long(/.
Christoph Mallon [Tue, 18 Nov 2008 13:42:01 +0000 (13:42 +0000)]
s/new_r_Const_long(current_ir_graph, /new_Const_long(/.

[r23756]

15 years agos/new_r_Const(current_ir_graph, /new_Const(/.
Christoph Mallon [Tue, 18 Nov 2008 13:37:13 +0000 (13:37 +0000)]
s/new_r_Const(current_ir_graph, /new_Const(/.

[r23754]

15 years agoRemoved unused block parameter from Const constructors
Moritz Kroll [Tue, 18 Nov 2008 12:51:26 +0000 (12:51 +0000)]
Removed unused block parameter from Const constructors

[r23750]

15 years ago- removed LV_COMPUTE_SORTED define and associated qsort(): nodes are now always sorte...
Michael Beck [Sat, 15 Nov 2008 18:40:49 +0000 (18:40 +0000)]
- removed LV_COMPUTE_SORTED define and associated qsort(): nodes are now always sorted by construction, no need to sort them
- reduced parameters in recursion, placed constant values on a global struct

[r23691]

15 years ago- fix r23688
Michael Beck [Sat, 15 Nov 2008 18:33:03 +0000 (18:33 +0000)]
- fix r23688

[r23690]

15 years agoRemove write-only variable.
Christoph Mallon [Sat, 15 Nov 2008 17:44:20 +0000 (17:44 +0000)]
Remove write-only variable.

[r23689]

15 years agoSimplify macro.
Christoph Mallon [Sat, 15 Nov 2008 17:26:57 +0000 (17:26 +0000)]
Simplify macro.

[r23688]

15 years agoRemove emit_linelength. The obstack knows its length.
Christoph Mallon [Sat, 15 Nov 2008 17:17:19 +0000 (17:17 +0000)]
Remove emit_linelength.  The obstack knows its length.

[r23687]

15 years agoFix typos.
Christoph Mallon [Sat, 15 Nov 2008 17:15:34 +0000 (17:15 +0000)]
Fix typos.

[r23686]

15 years agorename mangling stuff to avoid name clashes
Matthias Braun [Fri, 14 Nov 2008 16:00:26 +0000 (16:00 +0000)]
rename mangling stuff to avoid name clashes

[r23665]

15 years agofix problems when folding constants of different mode
Matthias Braun [Fri, 14 Nov 2008 15:38:07 +0000 (15:38 +0000)]
fix problems when folding constants of different mode

[r23662]

15 years agoAdd a flags output to IMul1OP for consistency with l_Mul and Mul and less headaches...
Christoph Mallon [Fri, 14 Nov 2008 08:01:48 +0000 (08:01 +0000)]
Add a flags output to IMul1OP for consistency with l_Mul and Mul and less headaches when building the Projs.

[r23645]

15 years agoConsider the result and operand having the same width a downconv, too. This results...
Christoph Mallon [Fri, 14 Nov 2008 07:52:10 +0000 (07:52 +0000)]
Consider the result and operand having the same width a downconv, too.  This results in a few more possibilities for AM folding.

[r23644]

15 years agoWhen dw lowering, use the lowered unsigned mode for the shift amount.
Christoph Mallon [Fri, 14 Nov 2008 07:42:05 +0000 (07:42 +0000)]
When dw lowering, use the lowered unsigned mode for the shift amount.

[r23643]

15 years agoResolve warnings.
Christoph Mallon [Thu, 13 Nov 2008 13:37:23 +0000 (13:37 +0000)]
Resolve warnings.

[r23627]

15 years ago64bit should be lowered at this place
Matthias Braun [Thu, 13 Nov 2008 13:25:05 +0000 (13:25 +0000)]
64bit should be lowered at this place

[r23625]

15 years agodon't print strings with printf
Matthias Braun [Thu, 13 Nov 2008 13:16:08 +0000 (13:16 +0000)]
don't print strings with printf

[r23623]

15 years ago- a stripped down version of liveness for register pressure estimation (and without...
Michael Beck [Thu, 13 Nov 2008 12:23:46 +0000 (12:23 +0000)]
- a stripped down version of liveness for register pressure estimation (and without out edges)

[r23621]

15 years ago- some cosmetic changes
Michael Beck [Thu, 13 Nov 2008 10:42:57 +0000 (10:42 +0000)]
- some cosmetic changes

[r23614]

15 years ago- let be_liveness() take the irg, not the birg which was just copied around
Michael Beck [Thu, 13 Nov 2008 10:28:43 +0000 (10:28 +0000)]
- let be_liveness() take the irg, not the birg which was just copied around

[r23613]

15 years ago- C99 features removed
Michael Beck [Thu, 13 Nov 2008 10:22:16 +0000 (10:22 +0000)]
- C99 features removed

[r23611]

15 years agoRemove unused macro.
Christoph Mallon [Thu, 13 Nov 2008 07:45:10 +0000 (07:45 +0000)]
Remove unused macro.

[r23610]

15 years agoUse assignment instead of memcpy().
Christoph Mallon [Thu, 13 Nov 2008 07:44:53 +0000 (07:44 +0000)]
Use assignment instead of memcpy().

[r23609]

15 years agoOne less sign extension in an obscure case.
Christoph Mallon [Wed, 12 Nov 2008 22:01:28 +0000 (22:01 +0000)]
One less sign extension in an obscure case.

[r23608]

15 years agoImprove last commit.
Christoph Mallon [Wed, 12 Nov 2008 21:35:33 +0000 (21:35 +0000)]
Improve last commit.

[r23606]

15 years agoCheck for any 16/32bit signed integer modes, not just for Hs and Is.
Christoph Mallon [Wed, 12 Nov 2008 21:29:56 +0000 (21:29 +0000)]
Check for any 16/32bit signed integer modes, not just for Hs and Is.

[r23605]

15 years agoFix previous commits.
Christoph Mallon [Wed, 12 Nov 2008 21:22:20 +0000 (21:22 +0000)]
Fix previous commits.

[r23604]

15 years agoRemove match_8bit and match_16bit. They were only asserted and the asserts (and...
Christoph Mallon [Wed, 12 Nov 2008 21:09:33 +0000 (21:09 +0000)]
Remove match_8bit and match_16bit.  They were only asserted and the asserts (and their comments) were plain strange.

[r23603]

15 years agoIJmp cannot do 8bit/16bit AM.
Christoph Mallon [Wed, 12 Nov 2008 20:33:16 +0000 (20:33 +0000)]
IJmp cannot do 8bit/16bit AM.

[r23602]

15 years agoKick the useless match_dest_am flag.
Christoph Mallon [Wed, 12 Nov 2008 20:19:50 +0000 (20:19 +0000)]
Kick the useless match_dest_am flag.

[r23601]

15 years agoFix typo in comment.
Christoph Mallon [Wed, 12 Nov 2008 19:41:27 +0000 (19:41 +0000)]
Fix typo in comment.

[r23600]

15 years agoFactorise creating Conv_I2Is.
Christoph Mallon [Wed, 12 Nov 2008 15:34:18 +0000 (15:34 +0000)]
Factorise creating Conv_I2Is.

[r23596]

15 years ago- improve doxygen docu
Michael Beck [Wed, 12 Nov 2008 14:54:45 +0000 (14:54 +0000)]
- improve doxygen docu

[r23594]

15 years agoHandle Sar in upper_bits_clean().
Christoph Mallon [Wed, 12 Nov 2008 14:36:59 +0000 (14:36 +0000)]
Handle Sar in upper_bits_clean().

[r23593]

15 years agoHandle signed modes for And in upper_bits_clean() better.
Christoph Mallon [Wed, 12 Nov 2008 14:28:51 +0000 (14:28 +0000)]
Handle signed modes for And in upper_bits_clean() better.

[r23592]

15 years agoThe upper bits of Or and Xor can be clean, too.
Christoph Mallon [Wed, 12 Nov 2008 14:26:25 +0000 (14:26 +0000)]
The upper bits of Or and Xor can be clean, too.

[r23591]

15 years agoHandle more general case: The right hand side of an And does not need to be an Immedi...
Christoph Mallon [Wed, 12 Nov 2008 14:17:50 +0000 (14:17 +0000)]
Handle more general case: The right hand side of an And does not need to be an Immediate to guarantee the upper bits are clean. Any "clean" node on the left or right side will do.

[r23589]

15 years agoSimplify incomprehensible condition.
Christoph Mallon [Wed, 12 Nov 2008 14:07:52 +0000 (14:07 +0000)]
Simplify incomprehensible condition.

[r23588]

15 years agoReplace if cascade by switch.
Christoph Mallon [Wed, 12 Nov 2008 14:03:42 +0000 (14:03 +0000)]
Replace if cascade by switch.

[r23587]

15 years agoFix r23461: Kick non-strict Convs with op mode == mode.
Christoph Mallon [Wed, 12 Nov 2008 13:05:21 +0000 (13:05 +0000)]
Fix r23461: Kick non-strict Convs with op mode == mode.

[r23585]

15 years agoHandle replacement of ia32_Conv_I2I by Cwtl as peephole optimisation instead of handl...
Christoph Mallon [Wed, 12 Nov 2008 10:15:16 +0000 (10:15 +0000)]
Handle replacement of ia32_Conv_I2I by Cwtl as peephole optimisation instead of handling it in the emitter.

[r23582]

15 years agomake Consts look like other nodes to avoid confusion
Matthias Braun [Tue, 11 Nov 2008 20:01:33 +0000 (20:01 +0000)]
make Consts look like other nodes to avoid confusion

[r23581]

15 years agofix node colors for some local constants
Matthias Braun [Tue, 11 Nov 2008 19:45:31 +0000 (19:45 +0000)]
fix node colors for some local constants

[r23579]

15 years agoavoid using explicit modes
Matthias Braun [Tue, 11 Nov 2008 19:45:10 +0000 (19:45 +0000)]
avoid using explicit modes

[r23578]

15 years agoFix r23571.
Christoph Mallon [Tue, 11 Nov 2008 16:32:34 +0000 (16:32 +0000)]
Fix r23571.

[r23576]

15 years ago- BugFix: get the mode from Cmp operand when calculating the negated pnc
Michael Beck [Tue, 11 Nov 2008 15:59:10 +0000 (15:59 +0000)]
- BugFix: get the mode from Cmp operand when calculating the negated pnc

[r23575]

15 years agoSet debug info for parameter stores when building be_Call.
Christoph Mallon [Tue, 11 Nov 2008 14:50:01 +0000 (14:50 +0000)]
Set debug info for parameter stores when building be_Call.

[r23571]

15 years ago- do not read the link of an exchanged node (although it
Michael Beck [Tue, 11 Nov 2008 12:34:27 +0000 (12:34 +0000)]
- do not read the link of an exchanged node (although it
  works as expected)
- small cosmetic

[r23560]

15 years agoRemove duplicated test.
Christoph Mallon [Tue, 11 Nov 2008 12:29:38 +0000 (12:29 +0000)]
Remove duplicated test.

[r23559]

15 years ago- cosmetic changes
Michael Beck [Tue, 11 Nov 2008 12:10:00 +0000 (12:10 +0000)]
- cosmetic changes

[r23556]

15 years agoMake the out edge verifier happy, when removing unnecessary ia32_Test, by not creatin...
Christoph Mallon [Tue, 11 Nov 2008 11:44:33 +0000 (11:44 +0000)]
Make the out edge verifier happy, when removing unnecessary ia32_Test, by not creating a result Proj, when there are no other users.

[r23555]

15 years ago- keep ALL mode_M nodes that have only unreachable users:
Michael Beck [Tue, 11 Nov 2008 06:11:56 +0000 (06:11 +0000)]
- keep ALL mode_M nodes that have only unreachable users:
  This fixes the problem than memory ops disappear before endless loops (fehler154.c)
- fixed some typos

[r23550]

15 years agoRemove new_{,r}d_{Bad,NoMem}(), which are just pointless wrappers for new_r_{Bad...
Christoph Mallon [Sat, 8 Nov 2008 11:00:02 +0000 (11:00 +0000)]
Remove new_{,r}d_{Bad,NoMem}(), which are just pointless wrappers for new_r_{Bad,NoMem}.

[r23536]

15 years agoGenerate new_bd_* instead of new_rd_* functions in the backend. The nodes are always...
Christoph Mallon [Sat, 8 Nov 2008 10:42:30 +0000 (10:42 +0000)]
Generate new_bd_* instead of new_rd_* functions in the backend.  The nodes are always created on the current irg.

[r23535]

15 years agoJust use new_NoMem(), it is always the current irg.
Christoph Mallon [Sat, 8 Nov 2008 10:19:36 +0000 (10:19 +0000)]
Just use new_NoMem(), it is always the current irg.

[r23534]

15 years agoSimplify emitting SSE float/int convs.
Christoph Mallon [Sat, 8 Nov 2008 10:11:13 +0000 (10:11 +0000)]
Simplify emitting SSE float/int convs.

[r23533]

15 years ago- Fix dangling % in format string, ironically in a warning about dangling %.
Christoph Mallon [Sat, 8 Nov 2008 08:16:23 +0000 (08:16 +0000)]
- Fix dangling % in format string, ironically in a warning about dangling %.
- Do not split string literals.

[r23532]

15 years agoFix subtle error in r22602, which never triggers, because we only have 32bit cmovs.
Christoph Mallon [Sat, 8 Nov 2008 07:24:49 +0000 (07:24 +0000)]
Fix subtle error in r22602, which never triggers, because we only have 32bit cmovs.

[r23531]

15 years agoFactorise common code to negate pnc.
Christoph Mallon [Sat, 8 Nov 2008 07:07:53 +0000 (07:07 +0000)]
Factorise common code to negate pnc.

[r23530]

15 years agoRemove pointless assert, (x & 7) == (int){0,1,2,3,4,5,6,7}[x & 7] is always true.
Christoph Mallon [Sat, 8 Nov 2008 06:51:32 +0000 (06:51 +0000)]
Remove pointless assert, (x & 7) == (int){0,1,2,3,4,5,6,7}[x & 7] is always true.

[r23529]

15 years agoTypos.
Christoph Mallon [Sat, 8 Nov 2008 06:45:25 +0000 (06:45 +0000)]
Typos.

[r23528]

15 years ago- change the modified flags of ASM instruction from '1' to $status_flags,
Michael Beck [Fri, 7 Nov 2008 14:42:53 +0000 (14:42 +0000)]
- change the modified flags of ASM instruction from '1' to $status_flags,
  no change yet until someone implements tracking of different flags
- add 'documentation' for the modified_flags feature

[r23518]

15 years ago- BugFix: ia32_Call modifies flags!
Michael Beck [Fri, 7 Nov 2008 14:25:15 +0000 (14:25 +0000)]
- BugFix: ia32_Call modifies flags!

[r23517]

15 years ago- fixed comment
Michael Beck [Fri, 7 Nov 2008 14:02:46 +0000 (14:02 +0000)]
- fixed comment

[r23514]

15 years ago- fixed opcode(): Const and SymConst can happen through propagate, so
Michael Beck [Fri, 7 Nov 2008 13:56:45 +0000 (13:56 +0000)]
- fixed opcode(): Const and SymConst can happen through propagate, so
  we must add code to handle them
- for now, only Call-addresses are not threated as input nodes:
  this allows more blocks to b melted, but may increase the live-in set
- split by live-troughs yet. this is a bit to restrictive but
  ok for now. Replace this later by Phi node splitting
- ALL live-outs must be roots, not only those without user inside the block

[r23513]

15 years agoAdded optimization Cmp((x >> c1) & c2, c3) = Cmp(x & (c2 << c1), c3 << c1) for eq...
Moritz Kroll [Fri, 7 Nov 2008 12:48:11 +0000 (12:48 +0000)]
Added optimization Cmp((x >> c1) & c2, c3) = Cmp(x & (c2 << c1), c3 << c1) for eq and lg

[r23512]

15 years ago- add missing include
Michael Beck [Thu, 6 Nov 2008 20:58:30 +0000 (20:58 +0000)]
- add missing include

[r23504]

15 years ago- removed "firm-jni" hack: unused and questionable anyway
Michael Beck [Thu, 6 Nov 2008 20:46:23 +0000 (20:46 +0000)]
- removed "firm-jni" hack: unused and questionable anyway

[r23503]

15 years ago- BugFix: cmp_nodes gets an ir_node **
Michael Beck [Thu, 6 Nov 2008 15:40:50 +0000 (15:40 +0000)]
- BugFix: cmp_nodes gets an ir_node **
- fixed unused argument
- fixed memory leaks
- add define to switch back to end-melt mode (general mode does not run
  pec yet)

[r23494]

15 years ago- generalized end-block melting into generic block shaping
Michael Beck [Thu, 6 Nov 2008 15:03:13 +0000 (15:03 +0000)]
- generalized end-block melting into generic block shaping

[r23487]

15 years ago- add the IRG-LINK resource
Michael Beck [Thu, 6 Nov 2008 15:02:27 +0000 (15:02 +0000)]
- add the IRG-LINK resource

[r23486]

15 years ago- C99 features removed
Michael Beck [Thu, 6 Nov 2008 13:46:02 +0000 (13:46 +0000)]
- C99 features removed

[r23481]

15 years ago- BugFix: transmit a block, not a node (fixes r23473)
Michael Beck [Thu, 6 Nov 2008 13:17:44 +0000 (13:17 +0000)]
- BugFix: transmit a block, not a node (fixes r23473)

[r23479]

15 years agoSet the orig node for 32 to 64 bit sign extensions.
Christoph Mallon [Thu, 6 Nov 2008 11:42:13 +0000 (11:42 +0000)]
Set the orig node for 32 to 64 bit sign extensions.

[r23476]

15 years agoMake using SET_IA32_ORIG_NODE() a bit simpler.
Christoph Mallon [Thu, 6 Nov 2008 11:31:49 +0000 (11:31 +0000)]
Make using SET_IA32_ORIG_NODE() a bit simpler.

[r23474]

15 years agoThe K6 does not like cltd and cwtl.
Christoph Mallon [Thu, 6 Nov 2008 10:56:19 +0000 (10:56 +0000)]
The K6 does not like cltd and cwtl.

[r23473]

15 years agoFix comments.
Christoph Mallon [Thu, 6 Nov 2008 10:32:26 +0000 (10:32 +0000)]
Fix comments.

[r23472]

15 years agoMake a few lines a bit more readable by using a local variable.
Christoph Mallon [Thu, 6 Nov 2008 10:29:04 +0000 (10:29 +0000)]
Make a few lines a bit more readable by using a local variable.

[r23471]