mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-19 20:59:42 +02:00
* merge changes committed to the wrong branch
git-svn-id: trunk@17857 -
This commit is contained in:
commit
01e9eacf5c
@ -2084,7 +2084,8 @@ unit cgcpu;
|
||||
|
||||
if not((def.typ=pointerdef) or
|
||||
((def.typ=orddef) and
|
||||
(torddef(def).ordtype in [u64bit,u16bit,u32bit,u8bit,uchar,pasbool]))) then
|
||||
(torddef(def).ordtype in [u64bit,u16bit,u32bit,u8bit,uchar,
|
||||
pasbool8,pasbool16,pasbool32,pasbool64]))) then
|
||||
ai.SetCondition(C_VC)
|
||||
else
|
||||
if TAiCpu(List.Last).opcode in [A_RSB,A_RSC,A_SBC,A_SUB] then
|
||||
|
@ -1567,7 +1567,8 @@ unit cgcpu;
|
||||
current_asmdata.getjumplabel(hl);
|
||||
if not ((def.typ=pointerdef) or
|
||||
((def.typ=orddef) and
|
||||
(torddef(def).ordtype in [u64bit,u16bit,u32bit,u8bit,uchar,pasbool]))) then
|
||||
(torddef(def).ordtype in [u64bit,u16bit,u32bit,u8bit,uchar,
|
||||
pasbool8,pasbool16,pasbool32,pasbool64]))) then
|
||||
cond:=C_VC
|
||||
else
|
||||
cond:=C_CC;
|
||||
|
@ -358,12 +358,12 @@ implementation
|
||||
otl,ofl : tasmlabel;
|
||||
begin
|
||||
// writeln('second_cmpboolean');
|
||||
if (torddef(left.resultdef).ordtype in [pasbool,bool8bit]) or
|
||||
(torddef(right.resultdef).ordtype in [pasbool,bool8bit]) then
|
||||
if (torddef(left.resultdef).ordtype in [pasbool8,bool8bit]) or
|
||||
(torddef(right.resultdef).ordtype in [pasbool8,bool8bit]) then
|
||||
cgsize:=OS_8
|
||||
else
|
||||
if (torddef(left.resultdef).ordtype=bool16bit) or
|
||||
(torddef(right.resultdef).ordtype=bool16bit) then
|
||||
if (torddef(left.resultdef).ordtype in [pasbool16,bool16bit]) or
|
||||
(torddef(right.resultdef).ordtype in [pasbool16,bool16bit]) then
|
||||
cgsize:=OS_16
|
||||
else
|
||||
cgsize:=OS_32;
|
||||
|
@ -580,7 +580,8 @@ unit cgppc;
|
||||
current_asmdata.getjumplabel(hl);
|
||||
if not ((def.typ=pointerdef) or
|
||||
((def.typ=orddef) and
|
||||
(torddef(def).ordtype in [u64bit,u16bit,u32bit,u8bit,uchar,pasbool]))) then
|
||||
(torddef(def).ordtype in [u64bit,u16bit,u32bit,u8bit,uchar,
|
||||
pasbool8,pasbool16,pasbool32,pasbool64]))) then
|
||||
begin
|
||||
if (current_settings.optimizecputype >= cpu_ppc970) or
|
||||
(current_settings.cputype >= cpu_ppc970) then
|
||||
|
@ -177,12 +177,12 @@ implementation
|
||||
firstcomplex(self);
|
||||
|
||||
cmpop:=false;
|
||||
if (torddef(left.resultdef).ordtype in [pasbool,bool8bit]) or
|
||||
(torddef(right.resultdef).ordtype in [pasbool,bool8bit]) then
|
||||
if (torddef(left.resultdef).ordtype in [pasbool8,bool8bit]) or
|
||||
(torddef(right.resultdef).ordtype in [pasbool8,bool8bit]) then
|
||||
cgsize:=OS_8
|
||||
else
|
||||
if (torddef(left.resultdef).ordtype=bool16bit) or
|
||||
(torddef(right.resultdef).ordtype=bool16bit) then
|
||||
if (torddef(left.resultdef).ordtype in [pasbool16,bool16bit]) or
|
||||
(torddef(right.resultdef).ordtype in [pasbool16,bool16bit]) then
|
||||
cgsize:=OS_16
|
||||
else
|
||||
cgsize:=OS_32;
|
||||
|
@ -1052,7 +1052,8 @@ implementation
|
||||
begin
|
||||
if not((def.typ=pointerdef) or
|
||||
((def.typ=orddef) and
|
||||
(torddef(def).ordtype in [u64bit,u16bit,u32bit,u8bit,uchar,pasbool]))) then
|
||||
(torddef(def).ordtype in [u64bit,u16bit,u32bit,u8bit,uchar,
|
||||
pasbool8,pasbool16,pasbool32,pasbool64]))) then
|
||||
begin
|
||||
ai:=TAiCpu.Op_sym(A_Bxx,hl);
|
||||
ai.SetCondition(C_NO);
|
||||
|
@ -2208,7 +2208,8 @@ unit cgx86;
|
||||
current_asmdata.getjumplabel(hl);
|
||||
if not ((def.typ=pointerdef) or
|
||||
((def.typ=orddef) and
|
||||
(torddef(def).ordtype in [u64bit,u16bit,u32bit,u8bit,uchar,pasbool8,pasbool16,pasbool32,pasbool64]))) then
|
||||
(torddef(def).ordtype in [u64bit,u16bit,u32bit,u8bit,uchar,
|
||||
pasbool8,pasbool16,pasbool32,pasbool64]))) then
|
||||
cond:=C_NO
|
||||
else
|
||||
cond:=C_NB;
|
||||
|
Loading…
Reference in New Issue
Block a user