1f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project; x86 timer in NASM 2f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project; 3f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project; Tom St Denis, tomstdenis@iahu.ca 4f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project[bits 32] 5f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project[section .data] 6f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Projecttime dd 0, 0 7f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project 8f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project[section .text] 9f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project 10f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project%ifdef USE_ELF 11f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project[global t_start] 12f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Projectt_start: 13f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project%else 14f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project[global _t_start] 15f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project_t_start: 16f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project%endif 17f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project push edx 18f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project push eax 19f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project rdtsc 20f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project mov [time+0],edx 21f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project mov [time+4],eax 22f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project pop eax 23f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project pop edx 24f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project ret 25f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project 26f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project%ifdef USE_ELF 27f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project[global t_read] 28f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Projectt_read: 29f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project%else 30f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project[global _t_read] 31f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project_t_read: 32f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project%endif 33f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project rdtsc 34f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project sub eax,[time+4] 35f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project sbb edx,[time+0] 36f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project ret 37f7fc46c63fdc8f39234fea409b8dbe116d73ebf8The Android Open Source Project