libfirm
16 years agoC99 features removed
Michael Beck [Mon, 17 Sep 2007 16:10:50 +0000 (16:10 +0000)]
C99 features removed

[r15841]

16 years agoWorks now with endless loops.
Sebastian Hack [Mon, 17 Sep 2007 15:18:56 +0000 (15:18 +0000)]
Works now with endless loops.
However, exec freq is 0.0 allover.
On the other hand, what is the execution frequency of an endless loop? infinity?

[r15840]

16 years agoRemove enum tarval_classification_t.
Christoph Mallon [Mon, 17 Sep 2007 15:11:26 +0000 (15:11 +0000)]
Remove enum tarval_classification_t.

[r15839]

16 years agoFix r15829.
Christoph Mallon [Mon, 17 Sep 2007 15:02:13 +0000 (15:02 +0000)]
Fix r15829.

[r15838]

16 years agoRemove classify_tarval(). Use tarval_is_null(), tarval_is_one() and tarval_is_all_one...
Christoph Mallon [Mon, 17 Sep 2007 14:51:21 +0000 (14:51 +0000)]
Remove classify_tarval(). Use tarval_is_null(), tarval_is_one() and tarval_is_all_one() instead.

[r15837]

16 years agofix
Matthias Braun [Mon, 17 Sep 2007 14:47:46 +0000 (14:47 +0000)]
fix

[r15836]

16 years agoAllow Convb in backend.
Christoph Mallon [Mon, 17 Sep 2007 14:38:36 +0000 (14:38 +0000)]
Allow Convb in backend.

[r15835]

16 years agodo sign extension for teo completent only
Michael Beck [Mon, 17 Sep 2007 14:34:39 +0000 (14:34 +0000)]
do sign extension for teo completent only

[r15834]

16 years agouse length parameter and not sc_get_buffer_length
Matthias Braun [Mon, 17 Sep 2007 14:07:23 +0000 (14:07 +0000)]
use length parameter and not sc_get_buffer_length

[r15833]

16 years agotest for CSE moving flags into different block
Matthias Braun [Mon, 17 Sep 2007 13:36:52 +0000 (13:36 +0000)]
test for CSE moving flags into different block

[r15832]

16 years agoAdd TODO.
Christoph Mallon [Mon, 17 Sep 2007 12:47:41 +0000 (12:47 +0000)]
Add TODO.

[r15831]

16 years agoAssert that static initialiser data does not overlap.
Christoph Mallon [Mon, 17 Sep 2007 12:47:24 +0000 (12:47 +0000)]
Assert that static initialiser data does not overlap.

[r15830]

16 years agoCmp(Conv(x), 0) -> Cmp(x, 0) if dest mode ist wider than source mode.
Christoph Mallon [Mon, 17 Sep 2007 12:31:16 +0000 (12:31 +0000)]
Cmp(Conv(x), 0) -> Cmp(x, 0) if dest mode ist wider than source mode.

[r15829]

16 years agoRemove unnecessary ValeCmp() macro for irnodeset.
Christoph Mallon [Mon, 17 Sep 2007 12:13:51 +0000 (12:13 +0000)]
Remove unnecessary ValeCmp() macro for irnodeset.

[r15828]

16 years agoAllow get_mode_null() for mode_b.
Christoph Mallon [Mon, 17 Sep 2007 12:11:18 +0000 (12:11 +0000)]
Allow get_mode_null() for mode_b.

[r15827]

16 years agoDisallow Convb.
Christoph Mallon [Mon, 17 Sep 2007 12:10:10 +0000 (12:10 +0000)]
Disallow Convb.

[r15826]

16 years agoUse prepared CMD.
Christoph Mallon [Mon, 17 Sep 2007 11:53:20 +0000 (11:53 +0000)]
Use prepared CMD.

[r15825]

16 years agoUse prepared CMD.
Christoph Mallon [Mon, 17 Sep 2007 11:50:55 +0000 (11:50 +0000)]
Use prepared CMD.

[r15824]

16 years agoMake warning about missing register assignment more verbose.
Christoph Mallon [Mon, 17 Sep 2007 11:33:46 +0000 (11:33 +0000)]
Make warning about missing register assignment more verbose.

[r15823]

16 years agotestcase where tarval problems manifestated
Matthias Braun [Sat, 15 Sep 2007 15:53:47 +0000 (15:53 +0000)]
testcase where tarval problems manifestated

[r15819]

16 years agoforgot to comitt 2 files
Matthias Braun [Sat, 15 Sep 2007 15:51:51 +0000 (15:51 +0000)]
forgot to comitt 2 files

[r15818]

16 years ago- always sign extend in get_tarval (this fixes results of tarval_and, tarval_or
Matthias Braun [Sat, 15 Sep 2007 15:51:30 +0000 (15:51 +0000)]
- always sign extend in get_tarval (this fixes results of tarval_and, tarval_or
  and tarval_eor not getting correctly hashed)
- tarval_null and tarval_one are defined for irms_reference now
- introduce get_tarvall_all_one and get_mode_all_one which returns the value
  where all bits are 1 (defined for int, boolean and reference modes)
- fix TARVAL_CLASSIFY_ALL_ONE with this

[r15817]

16 years agoAdded the fabulous Gauss-Seidel linear equation solver by Mr. Grund
Sebastian Hack [Sat, 15 Sep 2007 15:32:47 +0000 (15:32 +0000)]
Added the fabulous Gauss-Seidel linear equation solver by Mr. Grund
Adapted execfreqs
Now an order of magnitude faster... at least in c-lex.c

[r15816]

16 years agoFixed a "bug"
Sebastian Hack [Sat, 15 Sep 2007 15:31:20 +0000 (15:31 +0000)]
Fixed a "bug"

[r15815]

16 years agoextend am testapps to short and char types
Matthias Braun [Sat, 15 Sep 2007 13:06:42 +0000 (13:06 +0000)]
extend am testapps to short and char types

[r15813]

16 years agouse EMMS/FEMMS on AMD machines to clear x87 state
Michael Beck [Fri, 14 Sep 2007 14:31:31 +0000 (14:31 +0000)]
use EMMS/FEMMS on AMD machines to clear x87 state

[r15810]

16 years agouse ffreep st instead of fstp st on athlon
Michael Beck [Fri, 14 Sep 2007 13:42:59 +0000 (13:42 +0000)]
use ffreep st instead of fstp st on athlon

[r15809]

16 years agoffreep added
Michael Beck [Fri, 14 Sep 2007 13:42:17 +0000 (13:42 +0000)]
ffreep added

[r15808]

16 years agoARCH_ATHLON macro added
Michael Beck [Fri, 14 Sep 2007 13:41:51 +0000 (13:41 +0000)]
ARCH_ATHLON macro added

[r15807]

16 years agomake call arg/result verify a bit looser in backend (because we have half-fixed mode_...
Matthias Braun [Fri, 14 Sep 2007 11:56:07 +0000 (11:56 +0000)]
make call arg/result verify a bit looser in backend (because we have half-fixed mode_b irgs sometimes

[r15806]

16 years agopass op to custom init_attr function
Matthias Braun [Fri, 14 Sep 2007 11:55:08 +0000 (11:55 +0000)]
pass op to custom init_attr function

[r15805]

16 years agofix mode_b lowering for method parameters and return values (this fixes several fluff...
Matthias Braun [Fri, 14 Sep 2007 11:54:41 +0000 (11:54 +0000)]
fix mode_b lowering for method parameters and return values (this fixes several fluffy problems)

[r15804]

16 years agodo mode_b lowering before abi phase
Matthias Braun [Fri, 14 Sep 2007 11:53:42 +0000 (11:53 +0000)]
do mode_b lowering before abi phase

[r15803]

16 years agoadded eor test
Michael Beck [Fri, 14 Sep 2007 10:46:24 +0000 (10:46 +0000)]
added eor test

[r15802]

16 years agoFixed block of newly created node
Michael Beck [Fri, 14 Sep 2007 10:44:19 +0000 (10:44 +0000)]
Fixed block of newly created node

[r15801]

16 years agoa & (a ^ b) ==> a & ~b added
Michael Beck [Fri, 14 Sep 2007 10:40:10 +0000 (10:40 +0000)]
a & (a ^ b) ==> a & ~b added

[r15800]

16 years agotest local cse
Michael Beck [Fri, 14 Sep 2007 10:26:04 +0000 (10:26 +0000)]
test local cse

[r15799]

16 years ago- added DBG_OPT for various transformations
Michael Beck [Fri, 14 Sep 2007 10:17:08 +0000 (10:17 +0000)]
- added DBG_OPT for various transformations
- removed some set_*_left(), these are bad for CSE
- CSE BugFix: lookup did not normalize the nodes right!

[r15798]

16 years agoadd DeMorgan rules that reduce the number of instructions
Michael Beck [Thu, 13 Sep 2007 20:05:39 +0000 (20:05 +0000)]
add DeMorgan rules that reduce the number of instructions

[r15796]

16 years agoadded -(x >>u 31) and -(x >>s 31)
Michael Beck [Thu, 13 Sep 2007 19:03:25 +0000 (19:03 +0000)]
added -(x >>u 31) and -(x >>s 31)

[r15795]

16 years agomore tests added
Michael Beck [Thu, 13 Sep 2007 19:01:01 +0000 (19:01 +0000)]
more tests added

[r15794]

16 years agobugfix for x+~x
Michael Beck [Thu, 13 Sep 2007 17:03:32 +0000 (17:03 +0000)]
bugfix for x+~x

[r15793]

16 years agomore test added
Michael Beck [Thu, 13 Sep 2007 17:00:52 +0000 (17:00 +0000)]
more test added

[r15792]

16 years agoadd more algebraic optimizations
Michael Beck [Thu, 13 Sep 2007 16:36:06 +0000 (16:36 +0000)]
add more algebraic optimizations

[r15791]

16 years agoa cmp that can be CSEd (for the not yet comitted Cmp, Set falgs code
Matthias Braun [Thu, 13 Sep 2007 15:28:26 +0000 (15:28 +0000)]
a cmp that can be CSEd (for the not yet comitted Cmp, Set falgs code

[r15790]

16 years agofixed two bugs, ~a == C case added
Michael Beck [Thu, 13 Sep 2007 13:56:27 +0000 (13:56 +0000)]
fixed two bugs, ~a == C case added

[r15789]

16 years agomore cases added
Michael Beck [Thu, 13 Sep 2007 13:55:57 +0000 (13:55 +0000)]
more cases added

[r15788]

16 years ago- Remove stale comment.
Christoph Mallon [Thu, 13 Sep 2007 13:41:24 +0000 (13:41 +0000)]
- Remove stale comment.
- Do not generate dest am for 8bit operations, because the stricter register constraints are not handled yet.

[r15787]

16 years agomore cases added
Michael Beck [Thu, 13 Sep 2007 13:41:47 +0000 (13:41 +0000)]
more cases added

[r15786]

16 years agooptimize_preds() removed, op x CMP op y and X op a CMP X op b cases implemented
Michael Beck [Thu, 13 Sep 2007 13:35:09 +0000 (13:35 +0000)]
optimize_preds() removed, op x CMP op y and X op a CMP X op b cases implemented

[r15785]

16 years agoadded isa and bias to ia32_intrinsic_env_t, c99 feature removed
Michael Beck [Thu, 13 Sep 2007 13:33:04 +0000 (13:33 +0000)]
added isa and bias to ia32_intrinsic_env_t, c99 feature removed

[r15784]

16 years agois_Cast() added
Michael Beck [Thu, 13 Sep 2007 13:26:58 +0000 (13:26 +0000)]
is_Cast() added

[r15783]

16 years agoMore local optimisation tests.
Christoph Mallon [Thu, 13 Sep 2007 13:24:32 +0000 (13:24 +0000)]
More local optimisation tests.

[r15782]

16 years agoFix r15779 and generalise. Also implement
Christoph Mallon [Thu, 13 Sep 2007 13:22:04 +0000 (13:22 +0000)]
Fix r15779 and generalise. Also implement
- -a - b -> -(a + b)
- a - -b -> a + b

[r15781]

16 years agomore tests for localopts
Matthias Braun [Thu, 13 Sep 2007 12:23:41 +0000 (12:23 +0000)]
more tests for localopts

[r15780]

16 years agoAdd const_negate() which negates a Const node.
Christoph Mallon [Thu, 13 Sep 2007 12:22:55 +0000 (12:22 +0000)]
Add const_negate() which negates a Const node.
Implement
- const - (a - b) -> (b - a) + -const
- const1 - (a * const2) -> (a * -const2) + -const1

[r15779]

16 years agoImplement
Christoph Mallon [Thu, 13 Sep 2007 09:48:38 +0000 (09:48 +0000)]
Implement
- -a * const   -> a * -const
- -a * -b      -> a * b
- -a * (b - c) -> a * (c - b)
- (a - b) * -c -> (b - a) * c

[r15778]

16 years agoimproved test
Michael Beck [Thu, 13 Sep 2007 09:31:23 +0000 (09:31 +0000)]
improved test

[r15777]

16 years agoImproved 32x32=64bit multiplication
Michael Beck [Thu, 13 Sep 2007 09:28:08 +0000 (09:28 +0000)]
Improved 32x32=64bit multiplication

[r15776]

16 years agosome docu
Matthias Braun [Thu, 13 Sep 2007 09:03:45 +0000 (09:03 +0000)]
some docu

[r15775]

16 years agoadded check for Bad in Mul optimization
Michael Beck [Thu, 13 Sep 2007 08:52:00 +0000 (08:52 +0000)]
added check for Bad in Mul optimization

[r15774]

16 years agofix memory inputs of argument copyb (must be call memory, not NewMem)
Matthias Braun [Thu, 13 Sep 2007 08:51:04 +0000 (08:51 +0000)]
fix memory inputs of argument copyb (must be call memory, not NewMem)

[r15773]

16 years agofix warnings
Matthias Braun [Thu, 13 Sep 2007 08:33:24 +0000 (08:33 +0000)]
fix warnings

[r15772]

16 years agofix flags code for mem-input changes
Matthias Braun [Thu, 13 Sep 2007 08:32:13 +0000 (08:32 +0000)]
fix flags code for mem-input changes

[r15771]

16 years ago- first experimental approach of flag modeling in add/adc
Matthias Braun [Thu, 13 Sep 2007 08:11:29 +0000 (08:11 +0000)]
- first experimental approach of flag modeling in add/adc
- support SourceAM for convs
- allow Source/DestAM for 8/16bit modes where this is profitable

[r15770]

16 years agobetter handling of Mul nodes
Michael Beck [Thu, 13 Sep 2007 00:02:45 +0000 (00:02 +0000)]
better handling of Mul nodes

[r15767]

16 years agoConsistently place the mem in for AM directly after base and index.
Christoph Mallon [Wed, 12 Sep 2007 22:27:12 +0000 (22:27 +0000)]
Consistently place the mem in for AM directly after base and index.

[r15766]

16 years agoDeveloped further... might be unstable. so don't use for the moment.
Sebastian Hack [Wed, 12 Sep 2007 21:30:36 +0000 (21:30 +0000)]
Developed further... might be unstable. so don't use for the moment.
spill placement to be done.

[r15765]

16 years agoadd test for n*n=2n bits multiplication
Michael Beck [Wed, 12 Sep 2007 20:31:44 +0000 (20:31 +0000)]
add test for n*n=2n bits multiplication

[r15764]

16 years agoflags fixup phase
Matthias Braun [Wed, 12 Sep 2007 17:05:47 +0000 (17:05 +0000)]
flags fixup phase

[r15763]

16 years agoadd comment
Matthias Braun [Wed, 12 Sep 2007 17:05:30 +0000 (17:05 +0000)]
add comment

[r15762]

16 years agowe need the fix_start_block hack
Matthias Braun [Wed, 12 Sep 2007 17:04:21 +0000 (17:04 +0000)]
we need the fix_start_block hack

[r15761]

16 years agoadd a modify_flags flag
Matthias Braun [Wed, 12 Sep 2007 17:03:48 +0000 (17:03 +0000)]
add a modify_flags flag

[r15760]

16 years agofix warning
Matthias Braun [Wed, 12 Sep 2007 17:02:53 +0000 (17:02 +0000)]
fix warning

[r15759]

16 years agofixed testcase
Matthias Braun [Wed, 12 Sep 2007 17:02:29 +0000 (17:02 +0000)]
fixed testcase

[r15758]

16 years agoedge case for 64bit add where add with flag output is CSEd
Matthias Braun [Wed, 12 Sep 2007 16:53:28 +0000 (16:53 +0000)]
edge case for 64bit add where add with flag output is CSEd

[r15757]

16 years agoset names for ia32 default pns
Matthias Braun [Wed, 12 Sep 2007 16:43:35 +0000 (16:43 +0000)]
set names for ia32 default pns

[r15756]

16 years agoset names for ia32 default pns
Matthias Braun [Wed, 12 Sep 2007 16:43:31 +0000 (16:43 +0000)]
set names for ia32 default pns

[r15755]

16 years agoadded all constructors for Mulh
Michael Beck [Wed, 12 Sep 2007 15:03:03 +0000 (15:03 +0000)]
added all constructors for Mulh

[r15754]

16 years ago- added stronger checks for Mul
Michael Beck [Wed, 12 Sep 2007 11:51:28 +0000 (11:51 +0000)]
- added stronger checks for Mul
- added verifier for Mulh

[r15753]

16 years agomore support for Mulh nodes
Michael Beck [Wed, 12 Sep 2007 11:51:22 +0000 (11:51 +0000)]
more support for Mulh nodes

[r15752]

16 years agodeteled empty "info" files
Michael Beck [Wed, 12 Sep 2007 08:16:19 +0000 (08:16 +0000)]
deteled empty "info" files

[r15749]

16 years agoMulh is now an official opcode
Michael Beck [Wed, 12 Sep 2007 08:15:35 +0000 (08:15 +0000)]
Mulh is now an official opcode

[r15748]

16 years agoadd code to let it compile under _Win32 (x86)
Michael Beck [Wed, 12 Sep 2007 08:13:47 +0000 (08:13 +0000)]
add code to let it compile under _Win32 (x86)

[r15747]

16 years agoremove some unused l_ nodes
Matthias Braun [Tue, 11 Sep 2007 13:11:04 +0000 (13:11 +0000)]
remove some unused l_ nodes

[r15745]

16 years agoHandle left shift (when magnitude > mantissa) when converting float constants to...
Christoph Mallon [Tue, 11 Sep 2007 11:53:49 +0000 (11:53 +0000)]
Handle left shift (when magnitude > mantissa) when converting float constants to int.

[r15744]

16 years agoan outedge debug helper
Matthias Braun [Tue, 11 Sep 2007 11:34:04 +0000 (11:34 +0000)]
an outedge debug helper

[r15743]

16 years agomul fix
Matthias Braun [Tue, 11 Sep 2007 11:33:40 +0000 (11:33 +0000)]
mul fix

[r15742]

16 years agoexecute finish in the finish phase not in the after_ra phase
Matthias Braun [Tue, 11 Sep 2007 11:27:44 +0000 (11:27 +0000)]
execute finish in the finish phase not in the after_ra phase

[r15741]

16 years agofehler76: assertion when converting float constant to int
Christoph Mallon [Tue, 11 Sep 2007 11:12:52 +0000 (11:12 +0000)]
fehler76: assertion when converting float constant to int
fix source of fehler74 and fehler75.

[r15740]

16 years agofehler75: 64bit comparison gets lowered incorrectly.
Christoph Mallon [Tue, 11 Sep 2007 07:31:30 +0000 (07:31 +0000)]
fehler75: 64bit comparison gets lowered incorrectly.

[r15739]

16 years agoRemove duplicate AM declarations.
Christoph Mallon [Tue, 11 Sep 2007 05:50:19 +0000 (05:50 +0000)]
Remove duplicate AM declarations.

[r15738]

16 years agomake use of custom_init_attribute functions for specifying address-mode types and...
Matthias Braun [Mon, 10 Sep 2007 20:37:52 +0000 (20:37 +0000)]
make use of custom_init_attribute functions for specifying address-mode types and producing (a still commented out) modify_flags flag

[r15737]

16 years agoallow user defined functions for outputting node init code
Matthias Braun [Mon, 10 Sep 2007 20:26:06 +0000 (20:26 +0000)]
allow user defined functions for outputting node init code

[r15736]

16 years agoSorry, forgot one... comme toujours
Sebastian Hack [Mon, 10 Sep 2007 19:25:33 +0000 (19:25 +0000)]
Sorry, forgot one... comme toujours

[r15735]

16 years agoadded constant for D->Lu conversion
Michael Beck [Mon, 10 Sep 2007 19:13:59 +0000 (19:13 +0000)]
added constant for D->Lu conversion

[r15734]

16 years agoAdapted to new statev
Sebastian Hack [Mon, 10 Sep 2007 19:10:10 +0000 (19:10 +0000)]
Adapted to new statev

[r15733]

16 years agoJust made a warning go away when building optimized version of the compiler
Sebastian Hack [Mon, 10 Sep 2007 19:08:44 +0000 (19:08 +0000)]
Just made a warning go away when building optimized version of the compiler

[r15732]

16 years agoImproved statev stuff:
Sebastian Hack [Mon, 10 Sep 2007 19:08:03 +0000 (19:08 +0000)]
Improved statev stuff:
- can zip files
- can give regexes as filters
- have stack based timers

Rewrote python script to feed dbs:
- can read zipped files
- sqlite3
- mysql fast csv file import with pipes

[r15731]

16 years agoAdd magic for better code emission of 64bit minus.
Christoph Mallon [Mon, 10 Sep 2007 12:02:53 +0000 (12:02 +0000)]
Add magic for better code emission of 64bit minus.

[r15730]