Logo Search packages:      
Sourcecode: virtualbox-ose version File versions

DECLINLINE ( uint8_t   )  const

Probes a byte pointer for read access.

While the function will not fault if the byte is not read accessible, the idea is to do this in a safe place like before acquiring locks and such like.

Also, this functions guarantees that an eager compiler is not going to optimize the probing away.

Parameters:
pvByte Pointer to the byte.
Checks if the UTF-16 char is the low surrogate char (i.e. the 2nd char in the pair).

Returns:
true if it is.

false if it isn't.

Parameters:
wc The character to investigate.
Checks if the two UTF-16 chars form a valid surrogate pair.

Returns:
true if they do.

false if they doesn't.

Parameters:
wcHigh The high (1st) character.
wcLow The low (2nd) character.
Checks if a unicode code point is lower case.

Returns:
true if it is.

false if it isn't.

Parameters:
CodePoint The code point.
Checks if a unicode code point is alphabetic.

Returns:
true if it is.

false if it isn't.

Parameters:
CodePoint The code point.
Checks if a unicode code point is a decimal digit.

Returns:
true if it is.

false if it isn't.

Parameters:
CodePoint The code point.
Checks if a unicode code point is a hexadecimal digit.

Returns:
true if it is.

false if it isn't.

Parameters:
CodePoint The code point.
Checks if a unicode code point is white space.

Returns:
true if it is.

false if it isn't.

Parameters:
CodePoint The code point.
Tests if the guest is running in protected or not.

Returns:
true if in protected mode, otherwise false.
Parameters:
pVM The VM handle.
Tests if the guest is running in paged protected or not.

Returns:
true if in paged protected mode, otherwise false.
Parameters:
pVM The VM handle.
Tests if the guest is running in long mode or not.

Returns:
true if in long mode, otherwise false.
Parameters:
pVM The VM handle.
Tests if the guest is running in long mode or not.

Returns:
true if in long mode, otherwise false.
Parameters:
pCtx Current CPU context
Tests if the guest is running in 64 bits mode or not.

Returns:
true if in 64 bits protected mode, otherwise false.
Parameters:
pVM The VM handle.
pCtx Current CPU context
Checks if RTR0MEMOBJ::pv is a ring-3 pointer or not.

Returns:
true if it's a object with a ring-3 address, otherwise false.
Parameters:
pMem The ring-0 memory object handle.

Todo:
verify that the compiler actually doesn't optimize this away. (intel & gcc)
Type Constraints

Definition at line 4876 of file asm.h.

{
    /** @todo verify that the compiler actually doesn't optimize this away. (intel & gcc) */
    uint8_t u8;
# if RT_INLINE_ASM_GNU_STYLE
    __asm__ __volatile__("movb (%1), %0\n\t"
                         : "=r" (u8)
                         : "r" (pvByte));
# else
    __asm
    {
#  ifdef RT_ARCH_AMD64
        mov     rax, [pvByte]
        mov     al, [rax]
#  else
        mov     eax, [pvByte]
        mov     al, [eax]
#  endif
        mov     [u8], al
    }
# endif
    return u8;
}


Generated by  Doxygen 1.6.0   Back to index