* merge changes committed to the wrong branch

git-svn-id: trunk@17857 -
This commit is contained in:
florian 2011-06-28 18:23:02 +00:00
commit 01e9eacf5c
7 changed files with 18 additions and 13 deletions

View File

@ -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

View File

@ -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;

View File

@ -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;

View File

@ -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

View File

@ -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;

View File

@ -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);

View File

@ -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;