Rev 5577 | Rev 5593 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 5577 | Rev 5585 | ||
---|---|---|---|
Line 3... | Line 3... | ||
3 | ;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;; |
3 | ;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;; |
4 | ;; Distributed under terms of the GNU General Public License ;; |
4 | ;; Distributed under terms of the GNU General Public License ;; |
5 | ;; ;; |
5 | ;; ;; |
6 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
6 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
Line 7... | Line 7... | ||
7 | 7 | ||
Line 8... | Line 8... | ||
8 | $Revision: 5577 $ |
8 | $Revision: 5585 $ |
9 | 9 | ||
Line 1391... | Line 1391... | ||
1391 | xor eax, eax |
1391 | xor eax, eax |
1392 | ret |
1392 | ret |
Line 1393... | Line 1393... | ||
1393 | 1393 | ||
- | 1394 | ||
1394 | 1395 | align 4 |
|
- | 1396 | ;struct futex* __fastcall create_futex(int *ptr) |
|
1395 | align 4 |
1397 | create_futex: |
1396 | create_futex: |
1398 | push ecx |
- | 1399 | mov ecx, sizeof.FUTEX |
|
1397 | mov ecx, sizeof.FUTEX |
1400 | call create_object |
1398 | call create_object |
1401 | pop ecx |
Line 1399... | Line 1402... | ||
1399 | test eax, eax |
1402 | test eax, eax |
1400 | jz .fail |
1403 | jz .fail |
- | 1404 | ||
1401 | 1405 | mov [eax+FUTEX.magic], 'FUTX' |
|
1402 | mov [eax+FUTEX.magic], 'FUTX' |
1406 | mov [eax+FUTEX.destroy], 0 |
1403 | mov [eax+FUTEX.destroy], 0 |
- | |
1404 | lea ecx, [eax+FUTEX.wait_list] |
1407 | mov [eax+FUTEX.pointer], ecx |
1405 | list_init ecx |
- | |
1406 | mov [eax+FUTEX.pointer], 0 |
1408 | lea ecx, [eax+FUTEX.wait_list] |
1407 | mov [eax+FUTEX.flags], 0 |
1409 | list_init ecx |