mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-23 00:50:28 +02:00
* (modified) patch by Christo Crause: ESP8266 doesn't support min/max instructions, resolves #38175
git-svn-id: trunk@47699 -
This commit is contained in:
parent
92520c423e
commit
4f3271500a
@ -302,6 +302,9 @@ implementation
|
||||
{$ifdef i8086}
|
||||
cpuinfo,
|
||||
{$endif i8086}
|
||||
{$ifdef xtensa}
|
||||
cpuinfo,
|
||||
{$endif xtensa}
|
||||
cgbase,procinfo
|
||||
;
|
||||
|
||||
@ -1591,7 +1594,7 @@ implementation
|
||||
(thenstmnt.nodetype=assignn) and (elsestmnt.nodetype=assignn) and
|
||||
not(might_have_sideeffects(left)) and
|
||||
tassignmentnode(thenstmnt).left.isequal(tassignmentnode(elsestmnt).left) and
|
||||
is_32bitint(tassignmentnode(thenstmnt).right.resultdef) and
|
||||
(CPUXTENSA_HAS_MINMAX in cpu_capabilities[current_settings.cputype]) and is_32bitint(tassignmentnode(thenstmnt).right.resultdef) and
|
||||
((tassignmentnode(thenstmnt).right.isequal(taddnode(left).left) and (tassignmentnode(elsestmnt).right.isequal(taddnode(left).right))) or
|
||||
(tassignmentnode(thenstmnt).right.isequal(taddnode(left).right) and (tassignmentnode(elsestmnt).right.isequal(taddnode(left).left)))) then
|
||||
begin
|
||||
|
@ -141,7 +141,8 @@ Const
|
||||
CPUXTENSA_HAS_BOOLEAN_OPTION,
|
||||
CPUXTENSA_HAS_MUL32HIGH,
|
||||
CPUXTENSA_HAS_DIV,
|
||||
CPUXTENSA_HAS_LOOPS
|
||||
CPUXTENSA_HAS_LOOPS,
|
||||
CPUXTENSA_HAS_MINMAX
|
||||
);
|
||||
|
||||
tfpuflags =
|
||||
@ -155,7 +156,7 @@ Const
|
||||
(
|
||||
{ cpu_none } [],
|
||||
{ cpu_lx106 } [],
|
||||
{ cpu_lx6 } [CPUXTENSA_REGWINDOW, CPUXTENSA_HAS_SEXT, CPUXTENSA_HAS_NSAx, CPUXTENSA_HAS_BOOLEAN_OPTION, CPUXTENSA_HAS_MUL32HIGH, CPUXTENSA_HAS_DIV, CPUXTENSA_HAS_LOOPS]
|
||||
{ cpu_lx6 } [CPUXTENSA_REGWINDOW, CPUXTENSA_HAS_SEXT, CPUXTENSA_HAS_NSAx, CPUXTENSA_HAS_BOOLEAN_OPTION, CPUXTENSA_HAS_MUL32HIGH, CPUXTENSA_HAS_DIV, CPUXTENSA_HAS_LOOPS, CPUXTENSA_HAS_MINMAX]
|
||||
);
|
||||
|
||||
fpu_capabilities : array[tfputype] of set of tfpuflags =
|
||||
|
Loading…
Reference in New Issue
Block a user