Commit graph

13 commits

Author SHA1 Message Date
Siu Kwan Lam
8a159b35f0 refactor llvm_cbuilder 2012-09-07 17:53:22 -07:00
Siu Kwan Lam
af44641bb9 add noalias attribute to parameters 2012-09-07 17:53:22 -07:00
Siu Kwan Lam
1e4633c44d add invariant variable 2012-09-07 17:53:22 -07:00
Siu Kwan Lam
b941ae5f1f Use non-temporal hint at memory store for vectorizer.
Note: LLVM optimizer is smart enough to not use NT write if it is slower.
2012-09-07 17:53:22 -07:00
Siu Kwan Lam
8505256510 Inline ufunc kernel in vectorize. (Better io throughput) 2012-09-04 10:08:07 -07:00
Mark Wiebe
e7b1af043f Use the function's calling convention when doing the call in cbuilder 2012-08-30 18:13:03 -07:00
Siu Kwan Lam
a046685b2c Add calling_conv.
Set win32 api to use CC_X86_STDCALL. (need testing)
2012-08-30 12:23:53 -07:00
Siu Kwan Lam
eeda441dac Added stream vectorize. 2012-08-22 13:23:52 -05:00
Siu Kwan Lam
4d773ed5ed Add alignment control to vector_load/store.
E.g: align=1 for universal alignment. default to aligned.
2012-08-21 18:32:44 -05:00
Siu Kwan Lam
2218f1d49e Improve vector load store.
Changes make llvm emit parallel ld/st instead of scalar ld/st.
2012-08-21 17:26:12 -05:00
Siu Kwan Lam
5319fb8c98 Add initial vector support 2012-08-21 12:33:21 -05:00
Siu Kwan Lam
562e3c1e46 Fix: if-else branch should terminate automatically. Insert unreachable to if.end block if necessary. 2012-08-21 12:30:35 -05:00
Siu Kwan Lam
f9d7195413 reorganize 2012-08-13 15:53:09 -07:00
Renamed from llvm_cbuilder/builder.py (Browse further)