LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 988|回复: 5

熟悉c语言的兄弟帮助解释一下

[复制链接]
发表于 2003-5-30 05:44:58 | 显示全部楼层 |阅读模式
下面是icc是编译内核对内核需要做的改动,可否解释一下这些都是什么意思。//bow
For systems using IA-32 processors, sourcepatches are required in the following areas• Below are some examples of nonstandard/incorrect usage in kernel source that gcc either ignores or processes incorrectly. Intel is working with the Linux community to change the kernel source.

• Arithmetic on function pointers
• Duplicate type declarations
• Reliance on gcc optimization levels to work correctly
• Also certain gcc extensions that are currently unsupported by the Intel compiler are listed below

• The alias attribute is not supported. The Intel workaround is to use a function call instead of the alias declaration
• You cannot initialize a struct array ast struct x arr[]={}. This is used in the PCMCIA package. The Intel workaround is to use and empty stuct initialization instead.
• The __builtin_fabs is not supported which is also used in the PCMCIA package. The Intel workaround is to not define __GNUC__ and
__GNUC__MINOR while building PCMCIA package.
发表于 2003-5-30 09:22:44 | 显示全部楼层
函数指针的运算,重复类型说明,对gcc的优化级别的依赖,有些gcc的扩展icc不支持
不支持alias属性,Intel使用函数调用作为解决办法
不能初始化结构成struct x arr[]={},PCMCIA包用到这个功能,icc用一个空结构
不支持__builtin_fabs

。。。。但是没有说应该怎么改啊,你找到补丁没有
 楼主| 发表于 2003-5-30 09:53:53 | 显示全部楼层
多谢viper兄

我还是收回我这个问题吧,其实我问的并不是字面的意思,但是好象除了字面意思也没有更多好说的了。
 楼主| 发表于 2003-5-30 09:57:16 | 显示全部楼层
我找遍了intel也没有找到补丁,他们有一个内部使用的,但是在他们论坛上面已经有好几个人要过了都没得到。

linux kernel邮件列表上面有人成功编译过,想必那些写内核的人拿着intel的一点hint就可以自己改代码了,我们只好等补丁,:(
gentoo论坛上面也没有人知道,看来要subscribe到linux内核的maillist上面去找找了,hoho。
发表于 2003-5-30 11:40:32 | 显示全部楼层
doooom还是耐心一点,内核暂时不优化也问题不大。
发表于 2003-5-30 22:45:15 | 显示全部楼层
是,翻译出来字面的东西,还是不清楚到底是什么东西。
比方说函数指针的算术运算,难道是 func_pointer + 3 这样的计算么?是啊,函数指针加上一的时候要加多少字节呢。。。
依赖于gcc的优化级别倒是感觉有一点,加上 -O9 估计很多程序会不稳定?
那个初始化结构的似乎还具体一点儿。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表