由买买提看人间百态

topics

全部话题 - 话题: llvm
首页 上页 1 2 3 4 5 6 下页 末页 (共6页)
x****u
发帖数: 44466
1
来自主题: Programming版 - C++ 11问题:emplace_back()
clang/llvm主要是在架构上领先各种开源闭源的对手.
d****n
发帖数: 1241
2
来自主题: Programming版 - C++ 11问题:emplace_back()
新东西,没有太多冗余在里边。
GCC发展了这么多年,有不少东西都在一定程度上阻碍了他的发展,
比如说,GCC支持的后端比LLVM多,前端还有gfortran一样的东西,
支持的东西多了,塞进代码里的包袱也就多。。。整体改动起来也
就更难了
n****1
发帖数: 1136
3
来自主题: Programming版 - haskell 好像还不支持arm 64吧。
Seriously? Haskell on client side, you got to be kidding me.
And since when did embedding haskell into C become a good idea?
Technically, Haskell has Clang/LLVM backend.
n****1
发帖数: 1136
4
来自主题: Programming版 - 看来2013还是Javascript最流行
我是用chromebook的, 里面的chrome app即使是用了native client, 安装也和普通
chrome web app安装过程没区别. 因为chrome是自带这个libc runtime的.
而且这个libc runtime是跨平台的, 因为是llvm技术, 可以一次编译到处运行, 包括
windows/mac/linux
d****n
发帖数: 1241
5
来自主题: Programming版 - 问个c++ struct和指针问题
* 首先,struct的大小依赖于两个因素,一是field的大小,二是field的alignment,
这两个都是由ABI决定的,比如在64位的机器上,如果编译器选择遵守gcc/llvm所支持
的x86_64 ABI标准,那么double是8byte对齐,如果在32位的机器上,linux下gcc支持
的x86 abi是4byte对齐. 大小的话,double类型都是8 bytes. 在缺省情况下,如果某
个field不符合对齐标准,那么编译器会插入padding bytes,让这个field符合对齐的
标准。比如:
struct S {
char f1; // size是1,对齐是1
int f2; // size是4,对齐也是4
};
sizeof(struct S)是8,因为编译器会在f1后,加入3个padding bytes, 让f2符合对齐
的规范。
* 如果在定义struct的时候,添加了类似packed的attribute, 那么编译器会忽略对齐
的要求。
* auto跟动态类型没有关系,在你的例子里,pointer类型是编译器在静态的时候,根
据一定的类型推导规... 阅读全帖
d****n
发帖数: 1241
6
来自主题: Programming版 - 简易计算器优先计算级别怎么算?
有几个做法, 比如:
http://en.wikipedia.org/wiki/Shunting-yard_algorithm
http://en.wikipedia.org/wiki/Operator-precedence_parser
后者结合recursive descent parsing是现在手写parser很常用的一种方法, 这个教程
介绍了如何用:
http://llvm.org/docs/tutorial/LangImpl2.html
S*A
发帖数: 7142
7
如果有速度区别那个是很弱的编译器了。
在 LLVM 里面指针和数组的内部表示是一样的。
你做这样的编译测试还要加上 -O2 之类的。
S*A
发帖数: 7142
8
来自主题: Programming版 - 最高大上的 atoi
Lex 还行,但是Lex 很简单,自己手写也没有多少。
YACC 做编译器有很多限制,最大的问题是出错的恢复。
例如编程少打个‘;’, 然后编译器就彻底晕菜了。
很不容易跳过这个缺少的‘;’从下一句开始继续编译。
关键在于那个状态转换图是机器自动生成的,里面的过程
人是不参与的,恢复到上个可以继续的状态必须要手工
干预。这个状态图没有直观理解。这就是为什么老的 gcc
有时给出特别莫名其妙的错误信息。
LLVM 就完全没有用 YACC, gcc 以前用 YACC, 后来
也改用手动写了。
Perl 是用 YACC 的,当年我还仔细看过,得出的结论是
那个 YACC 完全是摆设。Perl 的隐含规则特别多,在不同
的 scope 里面可以干不同的事情。Perl 的YACC 里面最关键
的部分是对这些编译状态的维护,这些完全是在 YACC 以外
的。等到喂给 YACC 的时候已经完全确定下面可以发生什么。
YACC 就是走个过场而已,让你觉得 Perl 还有个语法树,其
实是没有的。这也是为什么只有 Perl 可以完全解释 Perl 的
语法。
YACC 基本上除了玩具编译项目不太值得严肃... 阅读全帖
S*A
发帖数: 7142
9
来自主题: Programming版 - 最高大上的 atoi

问题是现实中很多语言不是严格 LR(k) 的。如果有不是 LR(K)的扩展就
郁闷了
这个不一定,自动生成的都是间接跳转,这个在 Intel 体系上面会 flush
instruction pipeline。直接写的多数是直接调用,不会 flush instruction
pipeline。 YACC 真的是那末好用 gcc 和 LLVM 的人都是傻子不用?
特别是 gcc 还要放弃 YACC 从新写。人家是非常不情愿但是又是在没办法
了。
k**********g
发帖数: 989
10
来自主题: Programming版 - C语言能干嘛?

C can be compiled to LLVM bytecode and then to Javascript via emscripten.
k**********g
发帖数: 989
11
来自主题: Programming版 - Javascipt是糙快猛的典范

不能预计是什麽语言,但它的後端编译器很可能(仍)是 LLVM
c******o
发帖数: 1277
12
llvm其实不是vm
k**********g
发帖数: 989
13
来自主题: Programming版 - 请推荐最好的C++/Java/Python开源代码

Someone suggests llvm ...
http://programmers.stackexchange.com/a/71974/
S*A
发帖数: 7142
14
对,CMake 是最接近可以解决这个问题的。
例如 llvm 也用 CMake。
但是很多 project 不是用 CMake 的。
你看看有多少开发 iphone, VS 的程序员用 CMake 来生成
proj 文件?
CMake 有自己的限制,基本上出了 CMake 自己的预先支持的
框架,东西就变很 messy 了。在 CMake 预先支持的框架里
还比较干净。

eclipse
k**********g
发帖数: 989
15
来自主题: Programming版 - 现在还有哪些大公司用c++比较多

在「运算业」(computation),凡功能固定,代码稳定,界面不变的运算功能,都可
用C/C++ 实现,再用高阶语言封装。(除非是要实现新的演算法。)因此,即使是在
「运算业」,也只会在必要时才会用C/C++ 。最新趋势是用数阵语言开发新的演算法
,用低阶代码产生器生成C/LLVM IR 。
现在连手机影像处理都用这种模式。
k**********g
发帖数: 989
16
来自主题: Programming版 - 现在还有哪些大公司用c++比较多
现在学 LLVM 才是高大上。
s****a
发帖数: 238
17
来自主题: Programming版 - 现在还有哪些大公司用c++比较多
现在学llvm钱途怎么样,这东西还是很有意思的
l*********s
发帖数: 5409
18
来自主题: Programming版 - 现在学LLVM有没有前途
我觉得这个太阳春了。
w***g
发帖数: 5958
19
来自主题: Programming版 - 现在学LLVM有没有前途
搞个modern的jvm backend,让我们搞C++的爽爽。
至于编译器,其实啥语言都能做。稍微有点志气的语言都兴的是bootstrap,用这种语
言本身实现这种语言的编译器。这样一遍下来语言和编译器都没太大bug了。
z******g
发帖数: 271
20
来自主题: Programming版 - 现在学LLVM有没有前途
第一遍一般咋弄啊?
t*****n
发帖数: 4908
21
来自主题: Programming版 - 现在学LLVM有没有前途
值。比如swift
z****e
发帖数: 54598
22
来自主题: Programming版 - 现在学LLVM有没有前途
用swift写server吧
人家dart已经有server side的东西了
node.js麻烦大了
v8祖师爷有自己的语言,node.js还需要去寄生在v8上面
p***o
发帖数: 1252
23
llvm
g****t
发帖数: 31659
24
llvm是通用一个机器模型还是可以自己定义模型?
例如我的芯片现在是买的instruction set,也能优化吗?
另外我做描述的这些事,哪种语言或者IDE方便些呢?
g****t
发帖数: 31659
25
我去看看llvm,thanks for the information.
(1)
小芯片很多都不是标准C。我们是特制的。
标准c为基础的芯片我预测会今后在美国很
难生存不下去。因为人人都会,利润很少。另外标准c在很多场合over kill太多了。
我关注的主要是代码的robustness with respect to different future C
compilers and hardware changes。这方面如果出事故,赔个几十M都有可能。
所以需求是有的。
之类的书里面有详细讲这些隐含在C的不同compiler实现的坑。
但感觉指望人力避坑不是个好办法。而且现在c写得好的人越来越少。
(2)
因为速度和鲁棒性通常是duality,所以我觉得CS的人肯定已经有了compiler
middleware做速度。所以想看看是不是可以借鉴下。
p***o
发帖数: 1252
26
定制的东西可以很鲁棒也可以很不鲁棒,关键是看做芯片的公司养不养得起做
编译器的队伍。你怕赔几十M,可是你一年愿意出多少钱呢?最终的结果要么
是编译器bug越来越多,要么是前端用开源的东西比如llvm来节省人力成本。
g****t
发帖数: 31659
27
来自主题: Programming版 - LLVM的founder05年才phd毕业啊
我还以为是成名已久的大牛呢
太impressive了。
m********t
发帖数: 13072
28
来自主题: Programming版 - LLVM的founder05年才phd毕业啊
你也不是20出头了
咋还能问出这样的问题呢
g****t
发帖数: 31659
29
来自主题: Programming版 - LLVM的founder05年才phd毕业啊
我没问问题。你语文是体育老师教的?
m********t
发帖数: 13072
30
来自主题: Programming版 - LLVM的founder05年才phd毕业啊
你没问???真的?
m********t
发帖数: 13072
31
来自主题: Programming版 - LLVM的founder05年才phd毕业啊
你的语文是俄语老师教的。。。
l***z
发帖数: 61
32
可以试试numba库,给函数加上@jit,把python自动编译成llvm,性能应该会提高不少。
D***n
发帖数: 6804
33
来自主题: Programming版 - 请不要盲目崇拜FP语言
有啥搞笑的,经常发生的事情。
搞过的人都这么干过。生找10-20分钟,弄个简单脚本改进一下不超过1分钟。
用LLVM前端可以精确找。
g****t
发帖数: 31659
34
这个swift除了降低门槛之外。还有很多很牛x的非常新的特点。
generic programming, functional programming等等。
还有一些特点看上去照样可以让全局变量满天飞。
再加上llvm实际上是把swift翻译成object c。
我真不知道说什么好了。我感觉新特性有点过于多了。
m***r
发帖数: 359
35
来自主题: Programming版 - Python日报 一周回顾 2015-01-24
日报主页
http://py.memect.com/
2015-01-24 星期六,完整版 20 条
Uliweb现在支持IPython notebook @limodou
Vim的Python编辑器详细配置过程 @视觉研究
入门:学习Python循环 @ML_Yuens
另一个Lambda表达式教程 @Python开发者
scikit-learn系列视频免翻墙版 @爱可可-爱生活
2015-01-23 星期五,完整版 36 条
Dpark源码剖析 @sumnous_t
使用Selenium Python API与元素交互 @python自动化测试
Python 在 Linux 系统运维中都有哪些应用? @fiona514
Medusa: 基于Google Dart虚拟机的超快Python实现版本 @网路冷眼
python编程速查表 @爱可可-爱生活
2015-01-22 星期四,完整版 17 条
专为Python打造LLVM @HackerNewsDaily
Python 3.4 中新的 asyncio @me坤子
地图上模拟疫情扩散 @Python开发者
Python可视化工具概述... 阅读全帖
a*****e
发帖数: 1700
36
来自主题: Programming版 - 对 (im)mutability 的误解和深度理解
你知道 SSA 吗?LLVM 编译 C/C++ 到 SSA form,里面的变量都是 immutable 的,只
有 heap 和 stack 是 mutable 的,完全不妨碍实现任何功能。
所以你说这些,用 mutable heap object 在 FP 里面都直接做,难度在哪里?
m***r
发帖数: 359
37
来自主题: Programming版 - Python 周报 2015-02-28
http://py.memect.com/weekly/2015-02-28/
## 2015-02-28 星期六,完整版 12 条
多变量线性回归做房价预测的Python实例 @爱可可-爱生活
IPython 3.0版发布 @网路冷眼
Python下层次化聚类热图制作教程 @爱可可-爱生活
好用的Python机器学习库 @cvnote计算机视觉笔记
Pyston 0.3 发布,基于LLVM的Python JIT解释器 @好东西传送门
## 2015-02-27 星期五,完整版 10 条
Python下用MonkeyLearn API分析Twitter数据 @爱可可-爱生活
如何阅读程序代码(以wtfroms为例) @Linuxeden开源社区
scipy的数据处理工具Pandas @尹绪森
10款最受Python开发者欢迎的Python IDE @WEB开发家园
基于Python的行为驱动开发实战 @CSDN研发频道
## 2015-02-26 星期四,完整版 9 条
Python强化学习库 @爱可可-爱生活
用Python讲解算法和数据结构 @网路冷眼
iOS程序员如何使用pyth... 阅读全帖
m*********t
发帖数: 527
38
这帖子偏的。。前面就不说了。从 c++ physics engine 和 java 3d 游戏
performance 扯到赚不赚钱。
就事论事,physics engine 只是 3D 游戏的核心部分之一,一般来说都用 C/C++ 来写
。因为里面不管是粒子系统,软物体(有限元),流体,动力学,全都涉及到大量的矩
阵运算(而且一般还是 sparse 的)以及相关优化问题。这些矩阵运算不仅仅是做个加
法乘法的事情。比如 linear/nonlinear complementarity problem. 而且这种运算一般
都要求 real time。
在这上面你想要怎么 call opengl 渲染爱用啥用啥,js 也好 java 也好。。。然后大
型游戏你服务器那边底层构架 code 爱用啥用啥。。。
另外,ASM.js 其实本来就不是让人自己来读的。emscripten 编译出来的接近 llvm
byte code 一样。。还记得昨天 google 主页的 pony express 游戏吧,你可以看看那
段 js 代码,就是 emscripten 搞出来的。
p***o
发帖数: 1252
39
来自主题: Programming版 - 有人搞編譯器麽?
前端用llvm后端怎么搞都可以。

frame
z****e
发帖数: 54598
40
来自主题: Programming版 - java和swift还是缺一不可
其它语言嘛,尤其是脚本,基本上不适合用来搞app
c类语言太底层,写起来太慢,而且ide支持也弱
java能搞定android和server,能够复用代码
但是搞不定ios,swift能搞定ios,但是一旦涉及网络啥的
就显得蛋疼,更谈不上server side了,但是如果swift能搞定android的话
那就太好了,不过还是搞不定server,其实本质上就是llvm和jvm两个虚拟机
用这个还是用那个的区别,swift和java其实差别很小
apple和google好好商量一下,这两个自己再搞一个语言出来
能够兼容cloud,android和ios平台,这事基本就定了
app主要考虑单线程,gui,java最弱的就是gui,android和java差异就是gui
server主要考虑多线程,网络,跨平台,数据存储,java这几点做得尤其powerful
其实google和apple只要联手,两个凑一起,搞一个新兴语言出来
一点问题都没有,根本不是啥难事,这些features都写在这里了
就是一层窗户纸,一捅就破,话说写swift真的是好开心啊
一天不写,我就浑身难受
g*********e
发帖数: 14401
41
flex bison llvm
如果可以用轮子的话
z****e
发帖数: 54598
42
来自主题: Programming版 - react, angular2 哪个有前途

html, css就是viewer的部分
js做controller
model就是data
这一套不要说脚本了,就是swift完全按照这个写
都有些吃力,我在ios上已经放弃mvc了
效率太低
units一多,马上拖慢效率,lag很厉害
还有就是我发现llvm不行
效率明显不行,我用一个n^2复杂度的计算
当n->100的时候,在33ms以内就无法完成一个循环
导致fps下降得厉害,不得不优化算法
android上jvm强太多
h*i
发帖数: 3446
43
来自主题: Programming版 - pixie - Clojure寄生在C环境
和Clojure的实现方法类似,就是直接编译成虚拟机的byte code。 不过pixie的虚拟机
是自己实现的,用RPython写的,GC,JIT啥的都从这儿来。Async IO用的node的libuv
,C interop利用boost。挺clever的。
速度不知道,现在micro benchmark和LLVM byte code和Java差不多快,对一个GC,
dynamic typed, immutable data的语言来说,这是很可观了。以后优化了肯定可以更
快,C的2x以内不是不可能的吧。
l*****z
发帖数: 3022
44
来自主题: Programming版 - 被苹果给惊呆了!! (转载)
果家自己是用clang+llvm 不用gcc 或 g++
d********g
发帖数: 10550
45
来自主题: Programming版 - 被苹果给惊呆了!! (转载)
GNU不是啥行业标准,Linux才是BSD的小弟,Clang/LLVM相比GCC是长江后浪推前浪。
GCC爱怎么玩是它自己的事,就好像MS、Intel的编译器也一直夹带私货
l*****z
发帖数: 3022
46
来自主题: Programming版 - 被苹果给惊呆了!! (转载)
果家自己是用clang+llvm 不用gcc 或 g++
d********g
发帖数: 10550
47
来自主题: Programming版 - 被苹果给惊呆了!! (转载)
GNU不是啥行业标准,Linux才是BSD的小弟,Clang/LLVM相比GCC是长江后浪推前浪。
GCC爱怎么玩是它自己的事,就好像MS、Intel的编译器也一直夹带私货
z****e
发帖数: 54598
48
来自主题: Programming版 - mac升级到capitan, python ssl不好使了
Python 2.7.10 (default, Aug 22 2015, 20:33:39)
[GCC 4.2.1 Compatible Apple LLVM 7.0.0 (clang-700.0.59.1)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>
d******e
发帖数: 2265
49
来自主题: Programming版 - 感觉python的前途堪忧 (转载)
gcc就是性能差的源头吧。换llvm swift优化10年应该可以秒杀C++, java.
l*****z
发帖数: 3022
50
来自主题: Programming版 - 是不是大部分的程序员都用Mac?
胡扯
Mac上native有Emacs,vim,gcc llvm 整套,瘟上除了软软的一套还有啥?
首页 上页 1 2 3 4 5 6 下页 末页 (共6页)