Publishing details

Changelog

sdcc (4.4.1-1~noble) noble; urgency=medium

  [ Philipp Klaus Krause ]
  * Typographic fixes.

  [ Felix Salfelder ]
  * Fix Ticket #193

  [ Philipp Klaus Krause ]
  * Minor mcs51 refactoring.
  * Use information from generalized constant propagation in mcs51 code generation for |.
  * mcs51 refactoring.
  * Use information from generalized constant propagation in mcs51 code generation for &,^.
  * mcs51 code generation refactoring.
  * Fix opIsGptr, so it works even when the op has no aop yet.
  * Make aopGet use asmop * instead of operand *.
  * Generalize cheapMove
  * Burn AOP_STR.
  * mcs51 code generation refactoring.
  * Handle return values via aopRet.
  * Basic aopArg for mcs51.
  * Use aopRet.
  * Use aopArg, provide mcs51IsReturned and mcs51IsRegArg.
  * Fix mcs51_regname_to_idx, patch by Oleg Endo.
  * Fix peephole optimizer rule 186.e, patch by Oleg Endo.
  * Use aopArg for all non-bit parameters in genSend.
  * Replace further uses of fReturn by aopArg and aopRet.
  * Provide mcs51IsParmInCall.
  * Regression test for bug #3675.
  * Code refactoring for iCode operand replacement.
  * Directly create iCode chain instead of via intermediate set-style linked list.
  * Fix bug #3675.

  [ spth ]
  * Optimize towards djnz use.
  * Fix dead link.
  * Fix an mcs51 codegen bug affecting calls to reentrant functions where the last parameter is a struct, and some registers are live across the call.

  [ felixs ]
  * Fix #3677

  [ spth ]
  * Preparations for improved speed optimization for z80. Fix bug #3678. Fix a peephole rule bug. Use -std=c23 when calling preprocessor.
  * Regression test for bug #3678.
  * Preparations for improved speed optimization for z80.
  * Preparations for improved speed optimization for z80.
  * Preparations for improved speed optimization for z80.
  * Preparations for improved speed optimization for z80. Do another execution frequency estimate just before register allocation to improve the accuracy of speed optimizations.
  * Implement notUsed peephole condition for mcs51, patch by Oleg Endo.
  * Preparations for improved speed optimization for z80.
  * Preparations for improved speed optimization for z80.
  * Preparations for improved speed optimization for z80.
  * Preparations for improved speed optimization for z80.
  * Speed optimization in register allocation for z80 and related.
  * Fix bug #3680.
  * Fix bug #3680.
  * Shift optimization using information from generalized constant propagation.
  * Improve cost function accuracy.
  * Fully enable code speed optimization for z80 (and related).
  * Fix a z80 bug exposed by speed optimization combined with --reserve-regs-iy.
  * Fix a codegen crash affecting sm83 function calls via pointers to functions returning struct.
  * Replace deadMove by notUsed in non-push/pop roles.
  * Fix an stm8 rotation codegen issue resulting in invalid asm for --opt-code-speed.
  * Fix an stm8 codegen bug resulting an omitted carry for some wide subtractions where the least-significant byte of the subtrahend is in a.
  * Fix checking of return values for mcs51 notUsed.
  * Fix bug #3682.

  [ gorlik ]
  * enable mos6502 24bit address in sdas (patch #436)

  [ spth ]
  * Fix handling of jz, jnz in asmLineNodeFromLineNode.
  * Port a simplification from f8 to stm8. Fix an mcs51 peephole optimizer issue noticed by Oleg Endo.

  [ gorlik ]
  * simplify parsing of number radix (similar to upstream asxxxx).
  * add ".r56c02" to the assembler output for mos65c02 port.
  * add missing files to the mos65c02 std lib

  [ spth ]
  * Enable struct parameter tests for all ports except mos6502 (which doesn't support them yet).

  [ gorlik ]
  * Change several constants to match upstream asxxxx.
  * Enable cpu type selection for as6500.
  * Make the mos65c02 library compile.
  * Add regression for mos65c02 using uCsim.

  [ spth ]
  * pic16 regression test infrastructure fix, patch by Jonathon Hall.

  [ gorlik ]
  * Add crt to mos65c02 link step by default
  * Implement GenAnd and GenOr for mos65c02.

  [ spth ]
  * Disable a long long test for pic16, which does not support long long yet, patch by Jonathon Hall.

  [ gorlik ]
  * Correct opcode ordering. Fix get_model() reporting.
  * Make mos65c02 register transfer code use phx/phy/plx/ply.
  * Reformat comments to match other ports.
  * Implement IPUSH_VALUE_AT_ADDRESS iCode and enable corresponding regression tests. Disable failing tests for mos65c02.
  * Make sure result is a register before dereferencing the pointer (fix bug #3631)
  * Fix bug #3511
  * Add limited support to return aggregates to mos6502 port.
  * Add div and ldiv to the mos6502 standard library.
  * Trivial spelling fix.
  * Merge several minor changes from upstream asxxxx 5.50
  * Enable additional tests for mos6502.
  * Reduce ZP usage in setjump.
  * Remove unnecessary .optsdcc directive.
  * Add --no-zp-spill option to avoid register spills in ZP.

  [ spth ]
  * pic16 memory zeroing fixes, patch by Jonathon Hall.

  [ gorlik ]
  * revert OSEG to (PAG, OVR)
  * use ZP instead of absolute address
  * use DPTR instead of temp
  * implement strlen in asm
  * implement memset in asm
  * rename abs.c to abs.s
  * git-svn-id: https://svn.code.sf.net/p/sdcc/code/trunk@14517 4a8a32a2-be11-0410-ad9d-d568d2c75423
  * optimize memcpy, memcmp amd setjump implemetations

  [ spth ]
  * Fix a popP bug.
  * Fix simulation of z flag for not and neg. pdk code generation improvements.
  * Fix a Rabbit multiplication code generation bug.
  * setjmp for pic16, patch by Jonathon Hall.
  * Fix bug #3685.
  * Fix the worst part of bug #3482.
  * Enable elimination of dead RECEIVE iCodes. Fixs the rest of bug #3482.

  [ gorlik ]
  * fix bug3223041 regression failure for mos6502-stack-auto port
  * fix bug3531687 regression failure for mos6502-stack-auto port
  * fix bug3531687 regression failure for mos6502-stack-auto port

  [ spth ]
  * Fix bug #3508, patch by Steve Schnepp.

  [ gorlik ]
  * partially disable test for mos6502-stack-auto due to stack size limitations

  [ spth ]
  * Provide extern declartion to make test compile on hosts that choose not to inline.

  [ gorlik ]
  * fix bra in the opcode table. Use strncmp in the opcode search to support 65C02 bit manipulation instructions.
  * fix wrong offset for struct return in mos6502-stack-auto port
  * indentation changes

  [ spth ]
  * Fix bug #3681.
  * Fix bug #3683.
  * Enable mos65c02 port.
  * Enable mos65c02 port, set version to 4.4.0 to prepare for release.

  [ roybaer ]
  * Various updates to the manual.

  [ spth ]
  * Remove comment on non-compliance with C2X draft N3047 wrt. tag compatibility: current C23 draft N3149 matches SDCC behaviour.
  * Pick 3 bugfixes from next branch to trunk to prepare for 4.4.0 RC2.
  * Fix bug #3693.
  * Fix bug #3686.
  * Fix bug #3690.
  * Fix bug #3695.

  [ roybaer ]
  * Makeshift fix for bug #3694: Delete sdcpp in uninstall.

  [ spth ]
  * Merge next branch to trunk.

 -- Dimitry Ishenko <email address hidden>  Mon, 29 Jan 2024 22:50:33 -0500

Available diffs

Builds

Package files