Commit History

Author SHA1 Message Date
  nickysn 987cf2a9cf * fixed a bug in the maxqword check in the Rol/RorQWord(maxqword,x)->maxqword 8 years ago
  nickysn f65f0b125a + optimize sar(0,x) to 0 and sar(-1,x) to -1 8 years ago
  nickysn c028362f31 * added the missing pop directive after the push directive in handle_const_rox 8 years ago
  nickysn 855cd616f0 + optimize rol(0, x) and ror(0, x) to 0; also optimize the case with all ones, 8 years ago
  nickysn 29429cca3c + mask the shift/rotate count value in the rol/ror/sar inline nodes, before 8 years ago
  nickysn b17d97050f + also simplify rol(x,0) and ror(x,0) to x 8 years ago
  nickysn 8ac84ce43a + simplify sar(x,0) to x 8 years ago
  nickysn d8ec0eff8e + implemented inline code generation for 64-bit sar (the SarInt64 intrinsic) on 8 years ago
  nickysn 5393daa994 + added compile time const evaluation for Bsf/Bsr(const) as well 8 years ago
  nickysn 32395bbcbb + added compile time const evaluation optimization for PopCnt(const) 8 years ago
  nickysn d7c8a081a1 + enable using the cg64 ops OP_SHR/OP_SHL/OP_SAR on i386 for implementing the 8 years ago
  nickysn b14f277e8f + use rtl helpers for 64-bit shl/shr/sar/rol/ror modify in place operations, on 8 years ago
  nickysn f514657e45 + implemented the sar/shl/shr/rol/ror inline modify-in-place nodes; the actual 8 years ago
  nickysn 8d885ffde6 + write the inlinenumber of inline nodes in the node tree 8 years ago
  nickysn 256dc546ac + implemented the in_neg_assign_x and in_not_assign_x inline nodes, which will 8 years ago
  nickysn fc59649a98 + added inline nodes for handling and/or/xor in place (i.e. x:=x op y, where 8 years ago
  florian 6d6a45c034 * add/sub nodes with nf_internal set should not do overflow checking, resolves #30889 8 years ago
  florian a705525e9b * allow prec/succ on non-consecutive enums if pred/succ are generated internally 8 years ago
  florian 0bc1e7e23b * "inherit" the nf_internal flag in tinlinenode.getaddsub_for_incdec 8 years ago
  florian 64e2c2b914 + simplify succ/pred(<const>/x+/-x<const>) 8 years ago
  florian 000cffa8e3 * make more use of nf_internal to avoid range check errors 8 years ago
  florian e4d60b2048 * factored out tinlinenode.getaddsub_for_incdec from first_IncDec so it can be used independently 8 years ago
  florian 9c81e90e08 + extension to iso mode: reset/rewrite can take a file name as a second parameter 8 years ago
  nickysn d6007d650a * use tpointerdef.pointer_arithmetic_int/uint_type in tinlinenode.pass_typecheck 8 years ago
  nickysn e847971477 * use the actual ValSInt type from the system unit, instead of ptrsinttype when 8 years ago
  svenbarth 26a2ddd3d6 + extend Delete() intrinsics with Delphi compatible support for dynamic arrays. Also fixes Mantis #30306 9 years ago
  svenbarth 17bb29ddc3 Check for tf_winlikewidestring in the target's flags instead of relying on the target being a Windows system when determining whether the system as the WideString type that's separate from UnicodeString 9 years ago
  svenbarth aaff6d0b97 Allow Delete() and Insert() to be used with generic types as arguments. 9 years ago
  svenbarth a2c9c75e97 Convert Insert() and Delete() to intrinsics in preparation for dynamic array support for these two procedures. 9 years ago
  svenbarth 8c96fbed8f Fix for Mantis #28832 9 years ago