Commit History

Автор SHA1 Съобщение Дата
  yury a04e4971fc * i386: Do not request GOT for every function call. GOT is requested only for external calls in thlcgcpu.a_call_name(). Local calls are always PC relative. преди 6 години
  florian 597a23d278 + tls support for x86_64-linux (not yet enabled by default) преди 6 години
  florian 6dbde11f5a * three operand shl for shifting by 2, 4 or 8 can be simulated by lea преди 6 години
  florian 6a6ea6729f * i8086 compiler fixed, resolves #34552 преди 6 години
  florian e157939b41 * compilation on x86-64 and i8086 fixed преди 6 години
  florian 063415fa72 + i386-linux support for tls-based threadvars преди 6 години
  pierre c6977a0a7a Explicitly disable range checking преди 6 години
  Jonas Maebe 0b246f3dbd * converted Boolean8 to an internal type, and mapped Boolean to the преди 6 години
  Jonas Maebe 4686f61002 * keep track of the temp position separately from the offset in references, преди 7 години
  nickysn 518cdf9674 * replaced the saved_XXX_registers arrays with virtual methods inside преди 7 години
  florian 9b18e39c81 * enable Lea2AddBase and Lea2AddIndex in TX86AsmOptimizer.PostPeepholeOptLea as we have flag tracking now преди 7 години
  florian 381cf78ff1 * there is no vmovq for mmx registers преди 7 години
  florian 31f78ea2b6 + implementation of the vectorcall calling convention by J. Gareth Moreton преди 7 години
  florian 092223f400 * comment links to test now преди 7 години
  florian e5ebc65cce * if si and di are allocated on i8086, using an index in references is not possible anymore преди 7 години
  nickysn b3f7bce3a6 * check for CPUX86_HAS_SSE2 instead of CPUX86_HAS_SSEUNIT in Tcgx86.g_concatcopy преди 7 години
  florian dba1761a76 + tcgx86.a_load_reg_ref cuts data if the ref. size is smaller than the reg. size преди 8 години
  nickysn 7b70848d83 + allow the src register size to be different from the op size or the dst преди 8 години
  florian b1dff29cbf * removed unused units преди 8 години
  florian 5c2c5d72a2 * use avx for copying data only on i386 for 8 byte chunks преди 8 години
  nickysn ec11864272 * use a native sized int register for the shift count in in_sar_assign_x_y, преди 8 години
  nickysn 16af6f03fb + support OP_SHR/OP_SHL/OP_SAR/OP_ROL/OP_ROR in tcgx86.a_op_reg_ref преди 8 години
  nickysn 256dc546ac + implemented the in_neg_assign_x and in_not_assign_x inline nodes, which will преди 8 години
  florian 1e374df5b8 * correctly calculate the bit mask in thlcgobj.a_load_regconst_subsetreg_intern, resolves #31042 преди 8 години
  Jonas Maebe a25ebbba3e + added volatility information to all memory references преди 8 години
  svenbarth c8202061dc * get rid of addr_load_indirect again by having tcgx86 provide an internal implementation of both make_simple_ref() and a_load_ref_reg() so that make_direct_ref() can call the latter (and the latter the former) without fear of inifinite recursive calls due to the symbol; a_load_ref_reg() is additionally declared as "final" as a_load_ref_reg_internal() needs to be overloaded instead (which is the case for tcg8086) преди 8 години
  svenbarth 89f7da58ea * fix tcgx86.make_direct_ref: we need to use the register in which we loaded the symbol and combine that with the base register (if it is set) without using an ADD преди 8 години
  Jonas Maebe 27bb656cec * replaced "in_make_direct_ref" field with a trefaddr flag преди 8 години
  Jonas Maebe e8c9541c04 * don't use ADD in make_direct_ref(), as the flags may be live преди 8 години
  Jonas Maebe a9073cb50b * don't overwrite the flags in make_simple_ref() if the reference преди 8 години