Changeset bd1deed in mainline for kernel/generic/src/mm


Ignore:
Timestamp:
2007-02-11T20:04:08Z (18 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
c993e45
Parents:
ce8aed1
Message:

experimental support for Objective C
(disabled by default)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/generic/src/mm/as.c

    rce8aed1 rbd1deed  
    8282#endif /* CONFIG_VIRT_IDX_DCACHE */
    8383
     84#ifndef __OBJC__
    8485/**
    8586 * Each architecture decides what functions will be used to carry out
     
    8788 */
    8889as_operations_t *as_operations = NULL;
     90#endif
    8991
    9092/**
     
    993995pte_t *page_table_create(int flags)
    994996{
    995         ASSERT(as_operations);
    996         ASSERT(as_operations->page_table_create);
    997 
    998         return as_operations->page_table_create(flags);
     997#ifdef __OBJC__
     998        return [as_t page_table_create: flags];
     999#else
     1000        ASSERT(as_operations);
     1001        ASSERT(as_operations->page_table_create);
     1002       
     1003        return as_operations->page_table_create(flags);
     1004#endif
    9991005}
    10001006
     
    10071013void page_table_destroy(pte_t *page_table)
    10081014{
    1009         ASSERT(as_operations);
    1010         ASSERT(as_operations->page_table_destroy);
    1011 
    1012         as_operations->page_table_destroy(page_table);
     1015#ifdef __OBJC__
     1016        return [as_t page_table_destroy: page_table];
     1017#else
     1018        ASSERT(as_operations);
     1019        ASSERT(as_operations->page_table_destroy);
     1020       
     1021        as_operations->page_table_destroy(page_table);
     1022#endif
    10131023}
    10141024
     
    10271037void page_table_lock(as_t *as, bool lock)
    10281038{
     1039#ifdef __OBJC__
     1040        [as page_table_lock: lock];
     1041#else
    10291042        ASSERT(as_operations);
    10301043        ASSERT(as_operations->page_table_lock);
    1031 
     1044       
    10321045        as_operations->page_table_lock(as, lock);
     1046#endif
    10331047}
    10341048
     
    10401054void page_table_unlock(as_t *as, bool unlock)
    10411055{
     1056#ifdef __OBJC__
     1057        [as page_table_unlock: unlock];
     1058#else
    10421059        ASSERT(as_operations);
    10431060        ASSERT(as_operations->page_table_unlock);
    1044 
     1061       
    10451062        as_operations->page_table_unlock(as, unlock);
     1063#endif
    10461064}
    10471065
Note: See TracChangeset for help on using the changeset viewer.