Subversion Repositories HelenOS-historic

Rev

Rev 1286 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1286 Rev 1400
Line 27... Line 27...
27
 */
27
 */
28
 
28
 
29
#ifndef __LIBC__ppc32__THREAD_H__
29
#ifndef __LIBC__ppc32__THREAD_H__
30
#define __LIBC__ppc32__THREAD_H__
30
#define __LIBC__ppc32__THREAD_H__
31
 
31
 
32
/* I did not find any specification (neither MIPS nor PowerPC), but
-
 
33
 * as I found it
-
 
34
 * - it uses Variant II
-
 
35
 * - TCB is at Address(First TLS Block)+0x7000.
-
 
36
 * - DTV is at Address(First TLS Block)+0x8000
-
 
37
 * - What would happen if the TLS data was larger then 0x7000?
-
 
38
 * - The linker never accesses DTV directly, has the second definition any
-
 
39
 *   sense?
-
 
40
 * We will make it this way:
-
 
41
 * - TCB is at TP-0x7000-sizeof(tcb)
-
 
42
 * - No assumption about DTV etc., but it will not have a fixed address
-
 
43
 */
-
 
44
#define PPC_TP_OFFSET 0x7000
32
#define PPC_TP_OFFSET 0x7000
45
 
33
 
46
typedef struct {
34
typedef struct {
47
    void *pst_data;
35
    void *pst_data;
48
} tcb_t;
36
} tcb_t;