mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-12-10 22:17:28 +01:00
+ FPC_SET_CREATE_ELEMENT
This commit is contained in:
parent
6756b4ec78
commit
06209a3be3
@ -32,6 +32,29 @@ asm
|
||||
end;
|
||||
|
||||
|
||||
procedure do_create_element(p : pointer;b : byte);assembler;[public,alias:'FPC_SET_CREATE_ELEMENT'];
|
||||
{
|
||||
create a new set in p from an element b
|
||||
}
|
||||
asm
|
||||
pushl %eax
|
||||
pushl %ecx
|
||||
movl p,%edi
|
||||
xorl %eax,%eax
|
||||
movl $8,%ecx
|
||||
rep
|
||||
stosl
|
||||
movb b,%al
|
||||
movl p,%edi
|
||||
movl %eax,%ecx
|
||||
shrl $3,%eax
|
||||
andl $7,%ecx
|
||||
addl %eax,%edi
|
||||
btsl %ecx,(%edi)
|
||||
popl %ecx
|
||||
popl %eax
|
||||
end;
|
||||
|
||||
procedure do_set_byte(p : pointer;b : byte);assembler;
|
||||
[public,alias: {$ifdef FPCNAMES}'FPC_'+{$endif}'SET_SET_BYTE'];
|
||||
{
|
||||
@ -50,6 +73,7 @@ asm
|
||||
popl %eax
|
||||
end;
|
||||
|
||||
|
||||
procedure do_unset_byte(p : pointer;b : byte);assembler;
|
||||
[public,alias: {$ifdef FPCNAMES}'FPC_'+{$endif}'SET_UNSET_BYTE'];
|
||||
{
|
||||
@ -359,7 +383,10 @@ end;
|
||||
|
||||
{
|
||||
$Log$
|
||||
Revision 1.6 1998-10-22 14:50:08 pierre
|
||||
Revision 1.7 1998-11-24 12:54:01 peter
|
||||
+ FPC_SET_CREATE_ELEMENT
|
||||
|
||||
Revision 1.6 1998/10/22 14:50:08 pierre
|
||||
+ added FPC_SET_UNSET_BYTE for exclude of normsets
|
||||
|
||||
Revision 1.5 1998/10/22 12:48:29 peter
|
||||
|
||||
Loading…
Reference in New Issue
Block a user