⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 release.txt

📁 cxstm8 编译器
💻 TXT
字号:
		-------------------------------
		Release Notes for STM8 Compiler
		-------------------------------
V4.2.8:
------
	. The compiler was not inlining properly the memcpy function when
	  called with a count argument of zero.

	. An interrupt function declared with @nosvf, but calling a far
	  function by pointer thus using the c_x area was saving only 2
	  bytes instead of 3.

	. The code generator was producing a wrong code when calling a function
	  with at least two long arguments both accessed from the same pointer,
	  when this pointer is the first argument of the containing function,
	  and the call the first instruction of that function.

	. The compiler was not setting properly a global long integer
	  initialized with a cast address of a far object.

V4.2.7:
------
	. The pipeline optimization was wrongly exchanging instructions
	  with specific ones like 'wfi'.

	. The code generator was producing a wrong code when multiplying
	  two char variables both accessed by a pointer.

	. The code generator was not inlining properly the memcpy function
	  when an operand was an @tiny array.

	. The code generator was failing to pass a tiny pointer as first
	  argument to a function.

	. The compiler was producing a wrong code when subtracting a value
	  from a far pointer.

V4.2.6:
------
	. The optimizer was failing to reorder propoerly the pipeline when
	  the +compact option was specified

	. Interrupt functions calling machine library routines using the
	  c_x or c_y areas were not saving those locations.

V4.2.5:
------
	. The optimizer is reordering instructions for a better pipeline
	  efficiency.

	. Interrupt functions can be located anywhere.

	. The compiler was not ending properly functions returning _Bool
	  expressions.

	. The cvdwarf converter has been completed with accurate register
	  coding for argument passing.

V4.2.4:
------
	. The compiler is using relative jump tables in the code itself when
	  using a large model allowing a function using a switch to be located
	  across a 64K sector boundary.

	. The compiler provides new startup routines allowing the init table
	  to be located outside the first 64K sector.

	. The code generator produces a better code when toggling _Bool or
	  one bit bitfield variables.

	. The optimizer has been enhanced to produce a better code when
	  accessing arrays with a computed index.

V4.2.3:
------
	. The compiler has been enhanced to produce a better code when
	  comnputing several consecutive local object addresses.

	. The compiler was building a wrong addressing mode when using a
	  negative offset on a pointer.

	. The code generator was reverting arguments when implementing a
	  structure assignment with both structures accessed by pointer.

	. The optimizer was wrongly clearing a memory location when preceded
	  by a clear of the X register.

V4.2.2:
------
	. The compiler was producing a wrong instruction when setting a one
	  bit bitfield with a pointer.

	. The code generator was not saving the A register when using a 32
	  bit subtract followed by a shift.

	. The switch statement on a long expression was failing with models
	  smaller than 64K 

	. The optimizer was not updating an integer loop index in memory when
	  its value was read as a byte inside the loop.

V4.2.1:
------
	. The compiler was not properly sign extending the 8 bit result
	  of a modulo operation between an int and a signed char.

	. The compiler was wrongly propagating a negative offset on a 16
	  bits address thus allowing a wrong location to be accessed as the
	  processor produces a 17 bits offset.

	. The optimizer was wrongly removing a load from the long accumulator
	  when using the +compact option and when the accumulator was set only
	  by calls to machine library routines.

V4.1.3:
------
	. The compiler was not accessing properly @far bitfields
	. The _Bool variables can be located anywhere in the sector 0
	. The @vector modifier is implemented for interrupt vectors

V4.1.2:
------
	. The compiler implements the extra instruction of the V2 core

V4.1.1:
------
	. The standard test suites have been passed

V4.1.0:
------
	. The optimizer is implemented

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -