view gcc/testsuite/gcc.c-torture/compile/pr42164.c @ 158:494b0b89df80 default tip

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 25 May 2020 18:13:55 +0900
parents 04ced10e8804
children
line wrap: on
line source

typedef struct
{
  unsigned long long pte;
} pte_t;
pte_t mk_swap_pte (unsigned long offset)
{
  pte_t pte;
  pte.pte = (offset << 40);
  return pte;
}
int pte_file (pte_t pte)
{
  return pte.pte & (1 << 4);
}
typedef struct
{
  unsigned long val;
} swp_entry_t;
pte_t swp_entry_to_pte (swp_entry_t entry)
{
  swp_entry_t arch_entry;
  arch_entry = (swp_entry_t){mk_swap_pte (swp_offset (entry)).pte};
  __BUG_ON ((unsigned long) pte_file ((pte_t) {arch_entry.val}));
  return (pte_t) {arch_entry.val};
}