⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cris-volatile-1.c

📁 linux下编程用 编译软件
💻 C
字号:
/* Copyright (C) 2003  Free Software Foundation.   Check that size-optimizations for move insns (specifically peephole   optimizations) aren't applied to volatile objects in the CRIS port.   Origin: Hans-Peter Nilsson.  *//* { dg-do compile { target cris-*-* } } *//* { dg-final { scan-assembler-not {movu\...\[} } } *//* { dg-final { scan-assembler-not {move\.[^d].\[} } } *//* { dg-final { scan-assembler-not {and\.[^d].\[} } } *//* { dg-final { scan-assembler-not {or\.[^d].\[} } } */static const unsigned long c = 0x0000FF00;unsigned longa1 (void){  unsigned long m;  m = *(volatile unsigned long*) 0xb00000c8;  m &= c;  return m;}extern volatile unsigned long xx;unsigned longa2 (void){  unsigned long m;  m = xx;  m &= c;  return m;}extern volatile unsigned long yy[];unsigned longa3 (void){  unsigned long m;  m = yy[3];  m &= 0xfe00;  return m;}unsigned longac1 (void){  unsigned long m;  m = *(volatile unsigned long*) 0xb00000c8;  m &= 0xfe00;  return m;}extern volatile unsigned long xx;unsigned longac2 (void){  unsigned long m;  m = xx;  m &= 0xfe00;  return m;}extern volatile unsigned long yy[];unsigned longac3 (void){  unsigned long m;  m = yy[3];  m &= 0xfe00;  return m;}extern volatile unsigned long yy[];unsigned longoc3 (void){  unsigned long m;  m = yy[3];  m |= ~0xf;  return m;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -