源:RealView编译器常用特有功能

一. 关键字和运算符

1. __align(n):指示编译器在n 字节边界上对齐变量

对于局部变量,n 值可为 1、2、4 或 8。

对于全局变量,n 可以具有最大为 2 的 0x80000000 次幂的任何值。

    __align 关键字紧靠变量名称前面放置。

注意事项:

只能进行过对齐。也就是说,可以将两个字节的对象按 4 个字节对齐,而不能将 4 个字节的对象按两个字节对齐。

用法举例:

    __align() char buffer[];   /* buffer从8字节对齐边界开始*/

    void foo(void)
{
...
__align() int i; /* 这个对齐值是不允许用在局部变量中的*/
...
} __align() int i; /* 作为一个全局变量,这个对齐值是被允许的*/

2. __asm:此关键字用于将信息从编译器传递到 ARM 汇编器armasm。

用法:

a. 嵌入式汇编器

可以使用 __asm 关键字声明或定义嵌入式汇编函数。例如:

        __asm void my_strcpy(const char *src, char *dst);

b. 内联汇编器

可以使用 __asm 关键字将内联汇编合并到函数中。例如:

    int qadd(int i, int j)
{
int res;
__asm
{
QADD res, i, j
}
return res;
}

c. 汇编器标签

可以使用 __asm 关键字为 C 符号指定汇编器标签。例如:

        int count __asm__("count_v1"); // export count_v1, not count

d. 已命名的寄存器变量

可以使用 __asm 关键字声明已命名的寄存器变量。例如:

        register int foo __asm("r0");

3.

4.

5.

....

RealView编译器常用特有功能(转)的更多相关文章

  1. List接口特有功能

    List 有序的 有整数索引 允许重复使用 特有功能: void add(int index, E element)   //指定位置添加元素 E get()int index)            ...

  2. Pandas常用基本功能

    Series 和 DataFrame还未构建完成的朋友可以参考我的上一篇博文:https://www.cnblogs.com/zry-yt/p/11794941.html 当我们构建好了 Series ...

  3. java 16 -4 LinkedList的特有功能

    了解 LinkedList的特有功能: A:添加功能 public void addFirst(Object e) public void addLast(Object e) B:获取功能 publi ...

  4. java 16 -3 Vector的特有功能

    /* * Vector的特有功能: * 1:添加功能 替代 * public void addElement(Object obj) -- add() * 2:获取功能 * public Object ...

  5. Java基础知识强化之集合框架笔记26:LinkedList的特有功能

    1. LinkedList的特有功能: (1)添加功能  public  void  addFirst(Object   e)  public  void  addLast(Object   e) ( ...

  6. Java基础知识强化之集合框架笔记25:Vector的特有功能

    1. Vector的特有功能: (1)添加功能         public void addElement(Object obj)       -- add() (2)获取功能         pu ...

  7. Java基础知识强化之集合框架笔记16:List集合的特有功能概述和测试

    1. List集合的特有功能概述: (1)添加功能: void add(int index, Object element):在指定位置添加元素 (2)获取功能: Object get(int ind ...

  8. Impala系列: Impala常用的功能函数

    --=======================查看内置的函数--=======================hive 不需要进入什么内置数据库, 即可使用 show functions 命令列出 ...

  9. List集合的特有功能

    import java.util.ArrayList; import java.util.List; /** * * List集合的特有功能 * A:添加功能 * void add(int index ...

随机推荐

  1. IE 和 FF 写不同的CSS

    .FireFox 下如何使连续长字段自动换行 众所周知IE中直接使用word-wrap:break-word 就可以了, FF中我们使用JS插入的技巧来解决 <style type=" ...

  2. AutoTile 自动拼接(四) 学习与实践

    今天主要来说下,数据绑定. 之前第一章,我说到 把 资源图 画成格子,你们应该还有印象吧. 那么,当我 知道 格子数据,能否拿到 资源对应的图片呢? 大家先复习一下 第一章,发现很多格子数据 是相同的 ...

  3. 随笔css的样式

    div独占一行 span和div很相似但是span会随着内容的变化而改变宽度: p独占一行height:由字体撑开. a标签不支持宽和高需要加入dispaly:block: img,input,会排在 ...

  4. NGUI 添加回调函数

    //缓动完成 TweenPosition tweenPos=GetComponent<TweenPosition>(); tweenPos.AddOnFinished(complete); ...

  5. POJ 2289 Jamie's Contact Groups

    二分答案+网络最大流 #include<cstdio> #include<cstring> #include<cmath> #include<vector&g ...

  6. [LeetCode] Magical String 神奇字符串

    A magical string S consists of only '1' and '2' and obeys the following rules: The string S is magic ...

  7. select 通过表单提交获取select中的值

    <select class="txt" name="choice">       <option value="name" ...

  8. sphinx分域搜索

    http://stackoverflow.com/questions/2526407/complex-query-with-sphinx 比如要实现和如下sql代码相同的功能: SELECT * FR ...

  9. 测试redis+keepalived实现简单的主备切换【转载】

    转自: 测试redis+keepalived实现简单的主备切换 - Try My Best 尽力而为 - ITeye技术网站http://raising.iteye.com/blog/2311757 ...

  10. 7、装饰模式(Decorator)

    顾名思义,装饰模式就是给一个对象增加一些新的功能,而且是动态的,要求装饰对象和被装饰对象实现同一个接口,装饰对象持有被装饰对象的实例,关系图如下: Source类是被装饰类,Decorator类是一个 ...