summaryrefslogtreecommitdiff
path: root/compiler/ncgset.pas
diff options
context:
space:
mode:
authorjonas <jonas@3ad0048d-3df7-0310-abae-a5850022a9f2>2014-08-12 23:17:45 +0000
committerjonas <jonas@3ad0048d-3df7-0310-abae-a5850022a9f2>2014-08-12 23:17:45 +0000
commitedf7c5bb80ae0011b2f77907558f333c5d88f07d (patch)
tree315417398cdfbfe159e9ba0d51b47cbcf8035d68 /compiler/ncgset.pas
parente247af82583fa0b8eec0ab92dc37f31be70e0c0e (diff)
downloadfpc-edf7c5bb80ae0011b2f77907558f333c5d88f07d.tar.gz
* simplified in_smallset() and removed some old cruft (there's no need
anymore to change the register size) git-svn-id: http://svn.freepascal.org/svn/fpc/branches/hlcgllvm@28400 3ad0048d-3df7-0310-abae-a5850022a9f2
Diffstat (limited to 'compiler/ncgset.pas')
-rw-r--r--compiler/ncgset.pas13
1 files changed, 5 insertions, 8 deletions
diff --git a/compiler/ncgset.pas b/compiler/ncgset.pas
index 1fbe83f6e1..cc9099ac0e 100644
--- a/compiler/ncgset.pas
+++ b/compiler/ncgset.pas
@@ -44,7 +44,7 @@ interface
{ tcginnode }
tcginnode = class(tinnode)
- procedure in_smallset(uopsize: tcgsize; opdef: tdef; setbase: aint); virtual;
+ procedure in_smallset(opdef: tdef; setbase: aint); virtual;
function pass_1: tnode;override;
procedure pass_generate_code;override;
@@ -182,12 +182,12 @@ implementation
end;
- procedure tcginnode.in_smallset(uopsize: tcgsize; opdef: tdef; setbase: aint);
+ procedure tcginnode.in_smallset(opdef: tdef; setbase: aint);
begin
{ location is always LOC_REGISTER }
- location_reset(location, LOC_REGISTER, uopsize{def_cgsize(resultdef)});
+ location_reset(location, LOC_REGISTER, def_cgsize(resultdef));
{ allocate a register for the result }
- location.register := cg.getintregister(current_asmdata.CurrAsmList, uopsize);
+ location.register := hlcg.getintregister(current_asmdata.CurrAsmList, resultdef);
{**************************** SMALL SET **********************}
if left.location.loc=LOC_CONSTANT then
begin
@@ -206,9 +206,6 @@ implementation
right.resultdef, resultdef, left.location.register, right.location,
location.register);
end;
- location.size := def_cgsize(resultdef);
- location.register := cg.makeregsize(current_asmdata.CurrAsmList,
- location.register, location.size);
end;
@@ -406,7 +403,7 @@ implementation
handle smallsets separate, because it allows faster checks }
if use_small then
begin
- in_smallset(uopsize, opdef, setbase);
+ in_smallset(opdef, setbase);
end
else
{************************** NOT SMALL SET ********************}