summaryrefslogtreecommitdiff
path: root/compiler/nmat.pas
Commit message (Expand)AuthorAgeFilesLines
* + Implemented target-independent optimization of signed "mod 2**N" assergei2014-06-071-3/+47
* * unified the 8-bit and 16-bit alu handling in tshlshrnode.pass_typechecknickysn2014-04-231-23/+4
* * 16-bit alu handling in tshlshrnode.pass_typecheck simplified via the use ofnickysn2014-04-231-8/+2
* * tshlshrnode.simplify: in the case of 16-bit or 8-bit shl/shr, AND the rightnickysn2014-04-231-5/+1
* * 8/16-bit alu fixes in tnotnode.simplifynickysn2014-04-221-17/+15
* Fix for Mantis #25604.svenbarth2014-04-111-0/+40
* * properly simplify not(<const. cbool>), resolves #25255florian2014-02-161-4/+6
* + simplify shl/shr x, if (x mod bitsizeof(left))=0florian2014-01-301-36/+47
* * use new shl/shr constant folding (of r26295) only if forinline is setflorian2013-12-291-25/+32
* * fold shifting of constants equally to cpusflorian2013-12-281-2/+30
* * tmoddivnode.firstoptimize improvements/fixes:sergei2013-10-281-14/+20
* * tmoddivnode.pass_typecheck: in the case of unsigned div/mod positive_const,...nickysn2013-04-141-2/+4
* * fixed tmoddivnode.pass_typecheck on 64-bit CPUs; I was wrong about uint64 d...nickysn2013-04-111-7/+0
* * in the case of (uint8 div/mod small_positive_const), convert the const to u...nickysn2013-04-081-2/+2
* * first attempt to simplify tmoddivnode.pass_typecheck handling of all cpu na...nickysn2013-04-081-45/+25
* * refactored tunaryplusnode.pass_typecheck as wellnickysn2013-04-071-12/+9
* * refactored tunaryminusnode.pass_typecheck to handle all native int sizes ge...nickysn2013-04-071-14/+10
* * Borland Pascal compatibility for 16-bit CPUs: int16 shl int32 now produces ...nickysn2013-03-261-2/+2
* + insert type conversion for the div result when cpuneedsdiv32helper is usednickysn2013-03-161-0/+7
* * 16-bit ALU fixes in tmoddivnode.pass_typechecknickysn2013-03-161-2/+41
* * 16-bit ALU fixes in tshlshrnode.pass_typechecknickysn2013-03-131-8/+24
* fixed bug in tunaryplusnode.pass_typecheck introduced in my previous commit r...nickysn2013-03-091-1/+2
* 16-bit ALU fixes in tunaryminusnode.pass_typecheck and tunaryplusnode.pass_ty...nickysn2013-03-091-0/+14
* * overleft newline fixflorian2012-12-031-1/+0
* - Removed a number of unused variables, reduces noise at compilation.sergei2012-10-301-1/+0
* * fixes support for cpus with cpunodefaultint for unary minus nodesflorian2012-10-231-0/+2
* * correctly change the signdness information of tordconstnodes that arejonas2012-05-261-4/+4
* * merged trunk up to r20882jonas2012-04-151-38/+130
|\
| * Avoid internal error 2002042430 and check overloading before calling simplif...pierre2012-03-261-9/+15
| * * avoid range check errors when inlining not-nodes (mantis #21029)jonas2012-01-101-2/+13
| * * use SarInt64 to optimize 64 bit divs on 32 bit platforms, resolves #20998florian2012-01-041-24/+40
| * * Fix code to avoid use of unitialized rv local variable in tmoddivnode.simp...pierre2011-11-021-2/+3
| * * factored load node flags out of node flags to gain spaceflorian2011-10-301-2/+60
* | + support for qword div/mod via helper (the JVM only supports signedjonas2011-08-201-9/+18
|/
* + initial support for pascal booleans with sizes 2, 4 and 8florian2011-06-261-2/+5
* * tmoddivnode.simplify: made result definitely assigned and removed local varsergei2011-06-191-11/+4
* * Call fpc_shl/r_qword for qword types for first_shlshr64bitint methodtom_at_work2011-06-011-2/+9
* compiler: reduce amount of hints and warningspaul2011-04-201-0/+2
* * reintegrate avr branch into trunk, work on avr is less invasive than I thou...florian2011-04-191-1/+24
* compiler: set result value to dummy function to prevent compiler to generate ...paul2010-12-281-1/+2
* compiler: add unary plus node, search for unary plus operator if a type canno...paul2010-12-261-0/+75
* * moved the initialisation of the nodetree and tai class reference constantsjonas2010-10-091-9/+4
* * when simplifying ordinal expressions during inlining, keep the resultdefjonas2010-10-071-18/+21
* * unified names of system_*/systems_* setsflorian2010-01-071-1/+1
* * changed "Mixing signed expressions and longwords gives a 64bit result"jonas2008-11-131-1/+1
* * make result of not(constant) (with constant type <= sinttype)jonas2008-03-071-2/+10
* * the result of not(dword(ordconst)) has to be dword as well for Delphijonas2008-03-061-4/+10
* * fixed constant evaluation of not(byte/word/long/quadbool) + testjonas2008-03-061-0/+2
* * fixed an {$ifndef cpu64bitalu} which had to be {$ifndef cpu64bitaddr}jonas2008-02-201-2/+2
* * split cpu64bit compiler define intojonas2008-02-131-20/+20