libfirm
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]

15 years agoFix typo in comment.
Christoph Mallon [Thu, 6 Nov 2008 10:27:47 +0000 (10:27 +0000)]
Fix typo in comment.

[r23470]

15 years agoVIA C3-2 supports all P6 instructions.
Christoph Mallon [Thu, 6 Nov 2008 10:26:38 +0000 (10:26 +0000)]
VIA C3-2 supports all P6 instructions.

[r23469]

15 years agoFix typos in comments, reformat.
Christoph Mallon [Thu, 6 Nov 2008 10:25:09 +0000 (10:25 +0000)]
Fix typos in comments, reformat.

[r23468]

15 years ago- Corrected Abs/Nabs check
Michael Beck [Thu, 6 Nov 2008 02:09:57 +0000 (02:09 +0000)]
- Corrected Abs/Nabs check

[r23462]

15 years ago- Fixed: do not kick predecessors on non-current nodes
Michael Beck [Thu, 6 Nov 2008 01:51:12 +0000 (01:51 +0000)]
- Fixed: do not kick predecessors on non-current nodes
- Arguments should also return the right precision

[r23461]

15 years ago- neither Abs nor Minus change the precision, so we can look-through them
Michael Beck [Thu, 6 Nov 2008 01:19:18 +0000 (01:19 +0000)]
- neither Abs nor Minus change the precision, so we can look-through them
  when checking for superflous strictConv

[r23460]

15 years ago- allow fabs to be constructed
Michael Beck [Thu, 6 Nov 2008 00:58:05 +0000 (00:58 +0000)]
- allow fabs to be constructed

[r23459]

15 years ago- moved declarations to appropriate header files
Michael Beck [Thu, 6 Nov 2008 00:36:17 +0000 (00:36 +0000)]
- moved declarations to appropriate header files

[r23458]

15 years ago- fixed comments
Michael Beck [Thu, 6 Nov 2008 00:30:12 +0000 (00:30 +0000)]
- fixed comments

[r23457]

15 years ago- refactored code for generic block shaping
Michael Beck [Wed, 5 Nov 2008 14:17:56 +0000 (14:17 +0000)]
- refactored code for generic block shaping

[r23445]

15 years ago- BugFix: remove critical edges to ensure that Phi's have diferent predecessor
Michael Beck [Wed, 5 Nov 2008 13:50:12 +0000 (13:50 +0000)]
- BugFix: remove critical edges to ensure that Phi's have diferent predecessor
  blocks

[r23443]

15 years agoAdded new storage class for pointer constants
Moritz Kroll [Mon, 3 Nov 2008 19:39:38 +0000 (19:39 +0000)]
Added new storage class for pointer constants

[r23420]

15 years ago- DO NOT EDIT AFTER TEST!
Michael Beck [Mon, 3 Nov 2008 18:46:30 +0000 (18:46 +0000)]
- DO NOT EDIT AFTER TEST!

[r23419]

15 years ago- when a graph is lowered because of struct return changes, transform
Michael Beck [Mon, 3 Nov 2008 14:22:00 +0000 (14:22 +0000)]
- when a graph is lowered because of struct return changes, transform
  the value param arguments in the same way like all "register" arguments:
  this fixes fehler162.c

[r23408]

15 years ago- add some comments
Michael Beck [Mon, 3 Nov 2008 14:18:44 +0000 (14:18 +0000)]
- add some comments
- split get_or_set_call_arg() into get_call_arg() and create_call_arg()

[r23407]

15 years ago- firmEvaluator (VusualStudio 6/7/8 debug extension) added
Michael Beck [Mon, 3 Nov 2008 12:02:21 +0000 (12:02 +0000)]
- firmEvaluator (VusualStudio 6/7/8 debug extension) added

[r23400]

15 years ago- fixed RELEASE build
Michael Beck [Sun, 2 Nov 2008 17:31:06 +0000 (17:31 +0000)]
- fixed RELEASE build

[r23398]

15 years agoFix switch lowerer for cases close to overflow.
Christoph Mallon [Sat, 1 Nov 2008 21:22:31 +0000 (21:22 +0000)]
Fix switch lowerer for cases close to overflow.

[r23374]

15 years agoremove test dir
Matthias Braun [Sat, 1 Nov 2008 18:20:48 +0000 (18:20 +0000)]
remove test dir

[r23364]

15 years agomove tests around
Matthias Braun [Sat, 1 Nov 2008 18:20:10 +0000 (18:20 +0000)]
move tests around

[r23363]

15 years agoremove strange tests which does not link/run
Matthias Braun [Sat, 1 Nov 2008 18:19:36 +0000 (18:19 +0000)]
remove strange tests which does not link/run

[r23361]

15 years agomove tests around
Matthias Braun [Sat, 1 Nov 2008 18:18:19 +0000 (18:18 +0000)]
move tests around

[r23360]

15 years agoswitch is still broken, copying over cparser testcase since noone runs the cparser...
Matthias Braun [Sat, 1 Nov 2008 16:56:55 +0000 (16:56 +0000)]
switch is still broken, copying over cparser testcase since noone runs the cparser tests regularily

[r23350]

15 years ago- calling normalize_n_returns() improve greatly the block shaping
Michael Beck [Fri, 31 Oct 2008 16:10:01 +0000 (16:10 +0000)]
- calling normalize_n_returns() improve greatly the block shaping
- improved debug output

[r23335]

15 years agoPreserving a test case, which would brake with pbqp transformer on ARM and postinc...
Andreas Zwinkau [Fri, 31 Oct 2008 14:54:56 +0000 (14:54 +0000)]
Preserving a test case, which would brake with pbqp transformer on ARM and postinc rules

[r23329]

15 years ago- fixed allocation of resources even more
Michael Beck [Fri, 31 Oct 2008 14:47:13 +0000 (14:47 +0000)]
- fixed allocation of resources even more

[r23328]

15 years ago- fixed allocation of resources
Michael Beck [Fri, 31 Oct 2008 14:34:18 +0000 (14:34 +0000)]
- fixed allocation of resources

[r23327]

15 years ago- removed rest of already unsupported USE_EXPLICIT_PHI_IN_STACK
Michael Beck [Fri, 31 Oct 2008 14:03:24 +0000 (14:03 +0000)]
- removed rest of already unsupported USE_EXPLICIT_PHI_IN_STACK

[r23326]

15 years ago- shorten the lifetime of a variable
Michael Beck [Fri, 31 Oct 2008 14:01:02 +0000 (14:01 +0000)]
- shorten the lifetime of a variable

[r23325]

15 years ago- Fixed memory leak: delete pseudo-irgs if any
Michael Beck [Fri, 31 Oct 2008 14:00:22 +0000 (14:00 +0000)]
- Fixed memory leak: delete pseudo-irgs if any

[r23324]

15 years ago- indentation
Michael Beck [Fri, 31 Oct 2008 13:59:44 +0000 (13:59 +0000)]
- indentation

[r23323]

15 years ago- fixed typo
Michael Beck [Fri, 31 Oct 2008 13:38:46 +0000 (13:38 +0000)]
- fixed typo

[r23322]

15 years ago- fixed _get_irp_irg()
Michael Beck [Fri, 31 Oct 2008 13:38:31 +0000 (13:38 +0000)]
- fixed _get_irp_irg()

[r23321]

15 years ago- BugFix: use remove_irp_irg() instead of free_ir_graph() to prevent
Michael Beck [Fri, 31 Oct 2008 13:24:14 +0000 (13:24 +0000)]
- BugFix: use remove_irp_irg() instead of free_ir_graph() to prevent
  double graph freeing
- Put the constant result of stat_is_active() into variable

[r23320]

15 years ago- removed some constant ARR_LEN's
Michael Beck [Fri, 31 Oct 2008 13:21:24 +0000 (13:21 +0000)]
- removed some constant ARR_LEN's
- removed useless assert

[r23319]

15 years ago- reserve necessary resources before collect phiprojs
Sebastian Buchwald [Fri, 31 Oct 2008 11:31:47 +0000 (11:31 +0000)]
- reserve necessary resources before collect phiprojs
- fixed assertion

[r23316]

15 years ago- reserve the IR_RESOURCE_PHI_LIST resource
Michael Beck [Thu, 30 Oct 2008 15:48:04 +0000 (15:48 +0000)]
- reserve the IR_RESOURCE_PHI_LIST resource

[r23313]

15 years ago- reserve the IR_RESOURCE_PHI_LIST resource
Michael Beck [Thu, 30 Oct 2008 15:44:59 +0000 (15:44 +0000)]
- reserve the IR_RESOURCE_PHI_LIST resource

[r23312]

15 years ago- invalidate tr_outs because Calls might be removed
Michael Beck [Thu, 30 Oct 2008 15:41:48 +0000 (15:41 +0000)]
- invalidate tr_outs because Calls might be removed

[r23311]

15 years ago- do not treat Constants as live-ins: this assures, that a
Michael Beck [Thu, 30 Oct 2008 02:13:58 +0000 (02:13 +0000)]
- do not treat Constants as live-ins: this assures, that a
  meltet block has the same number of inputs like the original

[r23306]

15 years ago- BugFix: kill partitions with 0 blocks either
Michael Beck [Thu, 30 Oct 2008 01:39:36 +0000 (01:39 +0000)]
- BugFix: kill partitions with 0 blocks either
- BugFix: set the ins for the newly created Phis
- BugFix: correctly construct the Phis for old inputs

[r23305]

15 years agodeactivate debug output
Michael Beck [Tue, 28 Oct 2008 15:12:43 +0000 (15:12 +0000)]
deactivate debug output

[r23280]

15 years agoimproved example
Michael Beck [Tue, 28 Oct 2008 14:56:19 +0000 (14:56 +0000)]
improved example

[r23276]

15 years ago- implemented apply phase
Michael Beck [Tue, 28 Oct 2008 14:55:49 +0000 (14:55 +0000)]
- implemented apply phase

[r23275]

15 years ago- small cleanup
Michael Beck [Tue, 28 Oct 2008 14:21:39 +0000 (14:21 +0000)]
- small cleanup

[r23271]

15 years ago- add block Phi list resource
Michael Beck [Tue, 28 Oct 2008 13:17:26 +0000 (13:17 +0000)]
- add block Phi list resource
- check, that only local/global resources are allocated

[r23266]

15 years ago- analysis part of an block merging optimization
Michael Beck [Tue, 28 Oct 2008 04:34:13 +0000 (04:34 +0000)]
- analysis part of an block merging optimization

[r23250]

15 years ago- renamed normalize_node() into ir_normalize_node() and make it available outside...
Michael Beck [Tue, 28 Oct 2008 04:33:06 +0000 (04:33 +0000)]
- renamed normalize_node() into ir_normalize_node() and make it available outside iropt.c

[r23249]

15 years ago- removed const from function definitions (causes warnings on MSVC: formal parameter...
Michael Beck [Tue, 28 Oct 2008 04:32:18 +0000 (04:32 +0000)]
- removed const from function definitions (causes warnings on MSVC: formal parameter different)

[r23248]

15 years ago- example for the new block optimization
Michael Beck [Tue, 28 Oct 2008 04:30:41 +0000 (04:30 +0000)]
- example for the new block optimization

[r23247]

15 years ago- more irp_resource_reserved()
Michael Beck [Mon, 27 Oct 2008 21:47:50 +0000 (21:47 +0000)]
- more irp_resource_reserved()

[r23246]

15 years ago- BugFix: ensure that Convs are created in the right block
Michael Beck [Mon, 27 Oct 2008 17:33:57 +0000 (17:33 +0000)]
- BugFix: ensure that Convs are  created in the right block
- BugFix: add support for Id nodes when searching for leave Sel's:
  we MUST find all leaves else some nodes are NOT removed
- removed use of visited flag, useless: we cannot reache a Sel
  node by different data pathes
- add ressource allocators

[r23240]

15 years ago- used new global resource allocator
Michael Beck [Mon, 27 Oct 2008 17:09:10 +0000 (17:09 +0000)]
- used new global resource allocator

[r23238]

15 years ago- add functions for global (ir_prog) resource management
Michael Beck [Mon, 27 Oct 2008 15:43:44 +0000 (15:43 +0000)]
- add functions for global (ir_prog) resource management

[r23235]

15 years ago- introduced IR_RESOURCE_ENTITY_LINK
Michael Beck [Mon, 27 Oct 2008 15:16:29 +0000 (15:16 +0000)]
- introduced IR_RESOURCE_ENTITY_LINK

[r23232]

15 years ago- completely get rid of useless assertion (skip_Id() want's non-const nodes)
Michael Beck [Mon, 27 Oct 2008 14:23:51 +0000 (14:23 +0000)]
- completely get rid of useless assertion (skip_Id() want's non-const nodes)

[r23230]

15 years ago- fixed (useless) assertion
Michael Beck [Mon, 27 Oct 2008 14:16:10 +0000 (14:16 +0000)]
- fixed (useless) assertion

[r23229]

15 years ago- removed useless checking of control flow input for default_compute()
Michael Beck [Sat, 25 Oct 2008 21:50:12 +0000 (21:50 +0000)]
- removed useless checking of control flow input for default_compute()

[r23193]

15 years ago- BugFix: a - a is NOT 0 for NaN's
Michael Beck [Sat, 25 Oct 2008 21:48:15 +0000 (21:48 +0000)]
- BugFix: a - a is NOT 0 for NaN's
- a * 0 is NOT 0 for Inf

[r23192]

15 years agodon't ask mode_T node for output register
Matthias Braun [Sat, 25 Oct 2008 20:43:29 +0000 (20:43 +0000)]
don't ask mode_T node for output register

[r23190]

15 years agomark ebp output of leave as ignore
Matthias Braun [Sat, 25 Oct 2008 19:30:41 +0000 (19:30 +0000)]
mark ebp output of leave as ignore

[r23186]

15 years agofix fehler161 to link correctly
Matthias Braun [Sat, 25 Oct 2008 19:30:12 +0000 (19:30 +0000)]
fix fehler161 to link correctly

[r23185]

15 years agodemonstrates \!chunk->deleted assertion
Michael Beck [Sat, 25 Oct 2008 19:07:37 +0000 (19:07 +0000)]
demonstrates \!chunk->deleted assertion

[r23182]

15 years ago- handling of Top mode can be switched on/off at runtime (although no flag yet)
Michael Beck [Fri, 24 Oct 2008 20:55:37 +0000 (20:55 +0000)]
- handling of Top mode can be switched on/off at runtime (although no flag yet)
- Fix for a rare problem: when checking commutative touched nodes, we must distinguish between op(a, a) and op(a, b): these are NOT congruent and must not be on the same touched list

[r23178]

15 years agoKill Perm after pushing all operands through it.
Sebastian Buchwald [Fri, 24 Oct 2008 20:51:43 +0000 (20:51 +0000)]
Kill Perm after pushing all operands through it.

[r23177]

15 years agoLet edges_assure() only activate edge kinds, which are not activated yet.
Christoph Mallon [Fri, 24 Oct 2008 17:32:01 +0000 (17:32 +0000)]
Let edges_assure() only activate edge kinds, which are not activated yet.

[r23176]

15 years agoClear private data, when creating new out edges
Andreas Zwinkau [Fri, 24 Oct 2008 17:02:19 +0000 (17:02 +0000)]
Clear private data, when creating new out edges

[r23173]

15 years ago- fixed output
Michael Beck [Fri, 24 Oct 2008 13:32:06 +0000 (13:32 +0000)]
- fixed output

[r23170]

15 years agoJust assure edges, instead of blindly activating them
Andreas Zwinkau [Fri, 24 Oct 2008 13:28:42 +0000 (13:28 +0000)]
Just assure edges, instead of blindly activating them

Maybe edges_activate_kind should assert !info->activated ?

[r23169]

15 years ago- replaced the linear search with quadratic runtime inside normal_select()
Michael Beck [Fri, 24 Oct 2008 03:49:08 +0000 (03:49 +0000)]
- replaced the linear search with quadratic runtime inside normal_select()
  by a mostly O(1) access
- simpler memory freeing

[r23161]

15 years ago- fixed all memory leaks
Michael Beck [Fri, 24 Oct 2008 03:03:29 +0000 (03:03 +0000)]
- fixed all memory leaks

[r23160]

15 years ago- fixed some memory leaks
Michael Beck [Fri, 24 Oct 2008 02:51:00 +0000 (02:51 +0000)]
- fixed some memory leaks
- link resource is used until scheduler ends, honor that

[r23159]

15 years ago- small cleanup
Michael Beck [Fri, 24 Oct 2008 02:24:14 +0000 (02:24 +0000)]
- small cleanup

[r23158]

15 years ago- reserve the visited resource
Michael Beck [Fri, 24 Oct 2008 02:05:03 +0000 (02:05 +0000)]
- reserve the visited resource

[r23157]

15 years ago- use xmalloc instead of malloc
Michael Beck [Fri, 24 Oct 2008 02:02:11 +0000 (02:02 +0000)]
- use xmalloc instead of malloc
- reserve the IRN_LINK resource

[r23156]

15 years ago- add a hook for normalizing a node
Michael Beck [Fri, 24 Oct 2008 01:37:03 +0000 (01:37 +0000)]
- add a hook for normalizing a node
- used new hook to count number of normalizations

[r23155]

15 years ago- C99 features removed
Michael Beck [Fri, 24 Oct 2008 01:31:29 +0000 (01:31 +0000)]
- C99 features removed

[r23154]

15 years ago- better solution for the "mode_M node computes Top" problem
Michael Beck [Thu, 23 Oct 2008 22:26:27 +0000 (22:26 +0000)]
- better solution for the "mode_M node computes Top" problem

[r23152]

15 years agoSimplify dump_node_req().
Christoph Mallon [Thu, 23 Oct 2008 19:03:06 +0000 (19:03 +0000)]
Simplify dump_node_req().

[r23144]

15 years agoforgot 2 files
Matthias Braun [Thu, 23 Oct 2008 18:04:02 +0000 (18:04 +0000)]
forgot 2 files

[r23143]

15 years ago- Part1 of backend reorganisation:
Matthias Braun [Thu, 23 Oct 2008 18:02:53 +0000 (18:02 +0000)]
- Part1 of backend reorganisation:
Node flags and node registers are stored in a generic backend_info struct now
instead of every part of the backend doing custom (and slow) stuff

[r23142]

15 years agoRemove the unused regs_saved_by_me hook.
Christoph Mallon [Thu, 23 Oct 2008 16:53:57 +0000 (16:53 +0000)]
Remove the unused regs_saved_by_me hook.

[r23138]

15 years ago- more special Top handling: it is NOT allowed to replace a mode_M
Michael Beck [Thu, 23 Oct 2008 16:52:45 +0000 (16:52 +0000)]
- more special Top handling: it is NOT allowed to replace a mode_M
  Proj by UnknownM, this would destroy the graph, so skip the
  predecessor in that case

[r23136]

15 years ago- Call nodes computes always bottom, even if they have Unknown predecessors
Michael Beck [Thu, 23 Oct 2008 16:09:10 +0000 (16:09 +0000)]
- Call nodes computes always bottom, even if they have Unknown predecessors
- remove by_all_const: always saturate the type

[r23132]

15 years ago- more work on the Unknown problems: the only
Michael Beck [Thu, 23 Oct 2008 13:04:58 +0000 (13:04 +0000)]
- more work on the Unknown problems: the only
  solution seems to be fixing the type of the Proj(Cond)

[r23130]

15 years ago- example for the Unknown problem
Michael Beck [Thu, 23 Oct 2008 13:01:33 +0000 (13:01 +0000)]
- example for the Unknown problem

[r23129]

15 years ago- fixed r23120
Michael Beck [Thu, 23 Oct 2008 00:40:37 +0000 (00:40 +0000)]
- fixed r23120

[r23123]

15 years ago- put verify_type() again after the "type changed" test
Michael Beck [Wed, 22 Oct 2008 21:34:05 +0000 (21:34 +0000)]
- put verify_type() again after the "type changed" test

[r23120]

15 years ago- kill keep-alive edges to dead blocks before doing apply_result(),
Michael Beck [Wed, 22 Oct 2008 15:59:41 +0000 (15:59 +0000)]
- kill keep-alive edges to dead blocks before doing apply_result(),
  this reduces the graph and fixes the problem of dead cf to dead blocks
  (which assert else)

[r23114]

15 years ago- BugFix: fixed monotony checker, now enabled
Michael Beck [Wed, 22 Oct 2008 14:36:10 +0000 (14:36 +0000)]
- BugFix: fixed monotony checker, now enabled
- removed Cond hack: it does not help. Instead cond nodes
  are automatically handled AFTER all data nodes by
  placing them on an extra list
- BugFix: apply_cf() now remove bad cf even if the
  resulting block has only one predecessor and
  cannot be combined with its predecessor
- BugFix: data nodes computing Top must be replaced
  by Unknown, not Bad

[r23111]

15 years agoexample for the new commutative combo
Michael Beck [Wed, 22 Oct 2008 13:44:19 +0000 (13:44 +0000)]
example for the new commutative combo

[r23104]