Back to index

glibc  2.9
Defines | Variables
dl-sysdep.c File Reference
#include <config.h>
#include <kernel-features.h>
#include <ldsodefs.h>
#include <sysdeps/unix/sysv/linux/dl-sysdep.c>

Go to the source code of this file.

Defines

#define DL_PLATFORM_AUXV
#define DL_FIND_ARG_COMPONENTS(cookie, argc, argv, envp, auxp)

Variables

int __cache_line_size attribute_hidden

Define Documentation

#define DL_FIND_ARG_COMPONENTS (   cookie,
  argc,
  argv,
  envp,
  auxp 
)
Value:
do {                                                                 \
    char **_tmp;                                                     \
    size_t _test;                                                    \
    (argc) = *(long int *) cookie;                                   \
    (argv) = (char **) cookie + 1;                                   \
    (envp) = (argv) + (argc) + 1;                                    \
    for (_tmp = (envp); *_tmp; ++_tmp)                                      \
      continue;                                                             \
    /* The following '++' is important!  */                                 \
    ++_tmp;                                                          \
                                                                     \
    _test = (size_t)_tmp;                                            \
    _test = (_test + 0xf) & ~0xf;                                    \
    /* Under some circumstances, MkLinux (up to at least DR3a5)                    \
       omits the padding.  To work around this, we make a                   \
       basic sanity check of the argument vector.  Of                       \
       course, this means that in future, the argument                      \
       vector will have to be laid out to allow for this                    \
       test :-(.  */                                                 \
     if (((ElfW(auxv_t) *)_test)->a_type <= 0x10)                           \
       _tmp = (char **)_test;                                               \
    (auxp) = (ElfW(auxv_t) *) _tmp;                                         \
  } while (0)

Definition at line 41 of file dl-sysdep.c.

Value:
case AT_DCACHEBSIZE:                                          \
       __cache_line_size = av->a_un.a_val;                                  \
       break;

Definition at line 31 of file dl-sysdep.c.


Variable Documentation

int __cache_line_size attribute_hidden

Definition at line 25 of file dl-sysdep.c.