NEWS.md 4.5 KB
Newer Older
1
2
libFirm 1.20.0 (2011-12-07)
---------------------------
3

4
5
6
7
8
9
10
11
12
13
* Further improvemens to sparc backend (SPEC2000 works with softfloat)
* Tuning of x86 backend
* Software floatingpoint lowerer
* Fixed firm profiling
* New pass management allowing to specify pre-/postconditions for passes
* Remove dependency on liblpp, add support for gurobi ILP solver
* Experimental dwarf debugging support
* Code cleanups, refactoring
* Restructured API documentation
* Bugfixes (we did alot of csmith testing)
14

15
16
17
18
19
libFirm 1.19.1 (2011-05-17)
---------------------------

* Fix some set_XXX functions not being exported in the shared library

Matthias Braun's avatar
Matthias Braun committed
20
libFirm 1.19.0 (2011-03-15)
21
22
---------------------------

Matthias Braun's avatar
Matthias Braun committed
23
24
25
26
27
28
* Includes "SSA-Based Register Allocation with PBQP"
* Improved Sparc backend
* New (optimistic) fixpoint based value-range propagation/bit analysis
* Code cleanup and refactoring
* Bugfixes

Matthias Braun's avatar
Matthias Braun committed
29
libFirm 1.18.1 (2010-05-05)
30
31
---------------------------

Matthias Braun's avatar
Matthias Braun committed
32
* Fix bug where stackframe was not always setup for -fno-omit-frame-pointer
Matthias Braun's avatar
Matthias Braun committed
33
* bugfixes in Asm handling
Matthias Braun's avatar
Matthias Braun committed
34

35
36
37
libFirm 1.18.0 (2010-04-15)
---------------------------

Matthias Braun's avatar
Matthias Braun committed
38
* Includes "Preference Guided Register Assignment" algorithm
Matthias Braun's avatar
Matthias Braun committed
39
* Experimental Value Range Propagation
40
* Loop Inversion and experimental Loop Unrolling code
Matthias Braun's avatar
Matthias Braun committed
41
42
43
44
45
46
* Simplified construction interface. Most node constructors don't need graph/block arguments anymore.
* Reworked type interface. Type names are optional now. Support for additional linkage types that among others support C++ 'linkonce' semantics now.
* Small changes in constructors and node getters/setters (mostly adding 'const' to some getters)
* code cleanup, smaller improvements in API specification
* bugfixes

47
48
49
libFirm 1.17.0 (2009-05-15)
---------------------------

Matthias Braun's avatar
Matthias Braun committed
50
51
52
53
54
55
56
57
58
* bugfixes
* advanced load/store optimisation which hoists loads out of loops
* Internal restruturing: Alot of node structures are automatically generated
   from a specification file now.
* Add support for multiple calling conventions
* New experimental support for reading and writing programgraphs to disk
* Support and optimisations for trampolines
* fix PIC support

59
60
61
libFirm 1.16.0 (2009-01-28)
---------------------------

Christoph Mallon's avatar
Christoph Mallon committed
62
* bugfixes
63
* support for builtin nodes
Christoph Mallon's avatar
Christoph Mallon committed
64

65
66
libFirm 1.15.0 (2008-12-01)
---------------------------
Matthias Braun's avatar
Matthias Braun committed
67
68
* bugfixes

69
70
71
libFirm 1.14.0 (2008-11-22)
---------------------------

Matthias Braun's avatar
Matthias Braun committed
72
73
74
75
76
77
78
79
80
* Implementation of Clicks Combined Analysis/Optimisations
* New switch lowering code
* support for global asm statements
* improved asm support
* PIC support for Mac OS X
* New register pressure minimizing scheduler
* Improvements to spill algorithm
* fix endless loop problems
* further improve inlining heuristics
81
* improve peephole optimisations for x86
Matthias Braun's avatar
Matthias Braun committed
82
83
* bugfixes

84
85
libFirm 1.13.0 (2008-07-31)
---------------------------
Michael Beck's avatar
Michael Beck committed
86

Michael Beck's avatar
updated    
Michael Beck committed
87
* VanDrunen's GVN-PRE fixed
Michael Beck's avatar
Michael Beck committed
88
* operator strength reduce fixed and improved
yb9976's avatar
typos    
yb9976 committed
89
* fixed 64bit code generation for some rare compare cases
Michael Beck's avatar
updated    
Michael Beck committed
90
* better tailrecursion optimization: handles x * func() and x + func()
yb9976's avatar
typos    
yb9976 committed
91
* improved inliner: better heuristics for inlining, can now inline recursive calls
Michael Beck's avatar
updated    
Michael Beck committed
92
* improved spiller
Michael Beck's avatar
updated    
Michael Beck committed
93
94
* lowering of CopyB nodes
* better memory disambiguator
Michael Beck's avatar
updated    
Michael Beck committed
95
* float->64bit conversion fixed for x87
96
* removed old verbosity level based debugging: all modules use the new debug facility
Michael Beck's avatar
updated    
Michael Beck committed
97
* Improved Confirm based optimization and conditional evaluation (using Confirm nodes)
Michael Beck's avatar
updated    
Michael Beck committed
98
* BugFixes: tail recursion, load/store optimization, lowering of structure return, conditional
Michael Beck's avatar
updated    
Michael Beck committed
99
  evaluation, removal of unused methods
Michael Beck's avatar
updated    
Michael Beck committed
100
* reduced numer of indirections for backend operation
Michael Beck's avatar
updated    
Michael Beck committed
101
* ia32 Backend: supports more CPU architectures
Michael Beck's avatar
updated    
Michael Beck committed
102
* ARM Backend: fixed frame access
Matthias Braun's avatar
Matthias Braun committed
103
* support for special segments (like constructors, destructors)
Michael Beck's avatar
Michael Beck committed
104

105
106
libFirm 1.12.1 (2008-02-18)
---------------------------
Matthias Braun's avatar
Matthias Braun committed
107
108
109
110

* bugfixes for new style initializers with bitfield types
* make lowerer look at constant initializers too

111
112
libFirm 1.12.0 (2008-02-14)
---------------------------
Matthias Braun's avatar
Matthias Braun committed
113

Matthias Braun's avatar
Matthias Braun committed
114
* dependency on libcore and libobstack dropped
Matthias Braun's avatar
Matthias Braun committed
115
116
117
118
119
120
* there's an alternative easier to use way to construct compound initializers
* bugfixes
* improved support for exceptions
* speed improvements
* optimisation of known libc functions

121
122
libFirm 1.11.0 (2008-11-05)
---------------------------
Matthias Braun's avatar
Matthias Braun committed
123
124
125
126
127
128
129
130
131
132

* Lots of bugfixes
* Compilation speed improved
* Completely improved and rewritten handling of x86 address mode
* Optimized Mul -> Lea,Shift,Add transformation
* 64bit operations fixed and improved
* More local optimisations
* New backend peephole optimisations
* Explicit status flag modeling (only for x86 for now)
* Improvements of Load/Store optimisation and alias analysis
133
* All C benchmarks from Spec CINT2000 work now (with our edg frontend)