aboutsummaryrefslogtreecommitdiff
path: root/backendC/CleanCompilerSources/codegen1.c
AgeCommit message (Collapse)AuthorFilesLines
2015-11-23use new label names for _indirection (instead of old names)johnvg1-2/+2
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2667 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2015-07-20fix names and export labels of tuple selectors > 6 if exporting local labelsjohnvg1-2/+13
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2577 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2013-12-04generate .impmod before importing labels and descriptors,johnvg1-71/+90
using this information the code generator can determine from which module a label is imported, this is used when generating position independent code git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2332 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2013-11-08generate jsr_ap 1 instead of jsr e_system_sAPjohnvg1-4/+1
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2319 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2013-08-23bug fix: generate jmp_eval_upd entry for update function for boxed recordsjohnvg1-37/+21
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2287 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2013-08-22bug fix: don't use jmp_eval_upd for record fields of an abstract typejohnvg1-1/+5
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2285 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2012-07-27optimize is constructor functionsjohnvg1-2/+38
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2128 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2011-03-01git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1871 ↵johnvg1-1/+14
1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2010-09-29prevent NULL pointer dereferencejohnvg1-1/+1
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1800 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2008-12-19add integers and rationalsjohnvg1-2/+252
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1720 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2006-11-16rename ea entry for record to eu, to prevent conflict with eajohnvg1-9/+10
entry for constructor with the same name as the record git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1626 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2006-11-03generate an eval_fill call as ea entry for lazy record selectorsjohnvg1-1/+1
with state LazyRedirection (field with type a or (a ..)) git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1621 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2006-11-03generate ea entry for boxed records, fixes jmp_eval_upd in lazy selectorsjohnvg1-5/+34
for fields (in other records) with this record type git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1620 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2005-11-11new selector descriptors for garbage collectorjohnvg1-17/+16
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1557 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2005-10-06generate .a directive for constructorsjohnvg1-1/+6
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1546 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2005-01-25optimize apply of unknown function with two or more arguments, not yet enabledjohnvg1-10/+52
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1510 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2003-01-09fix label names for unboxed lists of records with dynamicsjohnvg1-6/+9
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1310 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2003-01-07fix generated labels for lazy record field selectors if ↵johnvg1-6/+0
ExportedLocalLabels==True git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1306 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2003-01-07export labels if ExportLocalLabels==True for lazy record selectorsjohnvg1-2/+8
and fix exported label name for unboxed lists of records git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1305 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-10-22add boxed recordsjohnvg1-2/+25
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1257 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2002-02-28remove some code for debuggingjohnvg1-12/+8
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1040 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2001-12-20add missing ()'s in test for strict list structorjohnvg1-1/+1
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@954 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2001-12-17implement pattern matching of strict, unboxed and overloaded listsjohnvg1-0/+23
in let, with and where expressions git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@942 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2001-11-19fix bug in exporting record labels for Dynamicsjohnvg1-7/+7
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@891 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2001-10-05generate and export all labels for records and constructors when ↵johnvg1-3/+3
ExportLocalLabels=True git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@831 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2001-09-03added code for strict and unboxed listsjohnvg1-36/+204
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@728 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2001-05-15changes for dynamic linking (not tested)clean1-11/+82
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@432 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2001-05-15merged with backend C source code on the macjohnvg1-1/+7
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@430 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2001-03-28fixed bug in contains_failjohnvg1-5/+8
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@349 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2001-03-27allow 'else fail' for all if nodes on root or injohnvg1-0/+25
then or else part of such an if node, and not just for if nodes on root or in else part of such if nodes git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@343 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
2000-07-12clean 1.3.3 backend again againclean1-0/+3738
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@189 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d