[llvm-commits] CVS: llvm-www/img/PhotoJim.jpg
Changes in directory llvm-www/img: PhotoJim.jpg added (r1.1) --- Log message: adding to contributors --- Diffs of the changes: (+0 -0) PhotoJim.jpg |0 1 files changed Index: llvm-www/img/PhotoJim.jpg ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm-www/Developers.html
Changes in directory llvm-www: Developers.html updated: 1.30 -> 1.31 --- Log message: Added me. Sorry if there is a long standing practice of adding them column major. Row major is just easier to maintain. Ruby rocks. Cheers, -- Jim --- Diffs of the changes: (+48 -46) Developers.html | 94 1 files changed, 48 insertions(+), 46 deletions(-) Index: llvm-www/Developers.html diff -u llvm-www/Developers.html:1.30 llvm-www/Developers.html:1.31 --- llvm-www/Developers.html:1.30 Thu Sep 1 18:05:51 2005 +++ llvm-www/Developers.htmlSun Oct 23 08:42:43 2005 @@ -15,23 +15,56 @@ Name Picture + + http://www-sal.cs.uiuc.edu/~vadve/";>Vikram Adve http://www-sal.cs.uiuc.edu/~vadve/";> - +mailto:[EMAIL PROTECTED]">Henrik Bach +mailto:[EMAIL PROTECTED]"> + + + + +http://sampo.lasthome.net/";>Nate Begeman +http://sampo.lasthome.net/";> + + +Rob Bocchino + + + + + +http://misha.brukman.net/code/llvm/";>Misha Brukman +http://misha.brukman.net/code/llvm/";> + + +http://jolt-lang.org/";>Jeff Cohen +http://jolt-lang.org/";> + + + +http://www.bigw.org/~jcriswel/";>John Criswell +http://www.bigw.org/~jcriswel/";> +http://alkis.evlogimenos.com";>Alkis Evlogimenos +http://alkis.evlogimenos.com";> + + + http://netfiles.uiuc.edu/gaeke/www/";>Brian Gaeke http://netfiles.uiuc.edu/gaeke/www/";> - - -mailto:[EMAIL PROTECTED]">Henrik Bach -mailto:[EMAIL PROTECTED]"> - http://www.nondot.org/~kungfoomaster/";>Brad Jones http://www.nondot.org/~kungfoomaster/";> -http://sampo.lasthome.net/";>Nate Begeman -http://sampo.lasthome.net/";> - - - +mailto:[EMAIL PROTECTED]">Jim Laskey +mailto:[EMAIL PROTECTED]"> http://nondot.org/sabre/LLVMNotes/";>Chris Lattner http://nondot.org/sabre/LLVMNotes/";> -Rob Bocchino - - - http://nondot.org/tonic/";>Tanya Lattner http://nondot.org/tonic/";> - - - -http://misha.brukman.net/code/llvm/";>Misha Brukman -http://misha.brukman.net/code/llvm/";> - - - - http://www.lenharth.org/~andrewl/";>Andrew Lenharth +http://www.lenharth.org/~andrewl/";>Andrew Lenharth http://www.lenharth.org/~andrewl/";> - -http://jolt-lang.org/";>Jeff Cohen -http://jolt-lang.org/";> http://kinoko.c.u-tokyo.ac.jp/~duraid/llvm.html";>Duraid Madina http://kinoko.c.u-tokyo.ac.jp/~duraid/llvm.html";> - - - - -http://www.bigw.org/~jcriswel/";>John Criswell -http://www.bigw.org/~jcriswel/";> - - http://illuvium.net/rspencer/";>Reid Spencer +http://illuvium.net/rspencer/";>Reid Spencer http://illuvium.net/rspencer/";> -http://alkis.evlogimenos.com";>Alkis Evlogimenos -http://alkis.evlogimenos.com";> - http://www.isanbard.org/~wendling/";>Bill Wendling http://www.isanbard.org/~wendling/";> - - + + + ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
Re: [llvm-commits] CVS: llvm/include/llvm/Support/CommandLine.h DataTypes.h.in
This doesn't compile for my copy of gcc;+#if __GNUC__ > 3+#define END_WITH_NULL __attribute__((sentinel))+#else+#define END_WITH_NULL+#endif ValuesClass values(const char *Arg, DataType Val, const char *Desc,- ...) {+ ...) END_WITH_NULL {/llvm/llvm/include/llvm/Support/CommandLine.h:339: error: attributes are not allowed on a function-definitiongcc version 4.0.0 (Apple Computer, Inc. build 5026)How about;ValuesClass END_WITH_NULL values(const char *Arg, DataType Val, const char *Desc,Cheers,-- JimOn Oct 23, 2005, at 1:37 AM, Jeff Cohen wrote:Changes in directory llvm/include/llvm/Support:CommandLine.h updated: 1.49 -> 1.50DataTypes.h.in updated: 1.20 -> 1.21---Log message:When a function takes a variable number of pointer arguments, with a zeropointer marking the end of the list, the zero *must* be cast to the pointertype. An un-cast zero is a 32-bit int, and at least on x86_64, gcc willnot extend the zero to 64 bits, thus allowing the upper 32 bits to berandom junk.The new END_WITH_NULL macro may be used to annotate a such a functionso that GCC (version 4 or newer) will detect the use of un-casted zeroat compile time.---Diffs of the changes: (+8 -1) CommandLine.h | 3 ++- DataTypes.h.in | 6 ++ 2 files changed, 8 insertions(+), 1 deletion(-)Index: llvm/include/llvm/Support/CommandLine.hdiff -u llvm/include/llvm/Support/CommandLine.h:1.49 llvm/include/llvm/Support/CommandLine.h:1.50--- llvm/include/llvm/Support/CommandLine.h:1.49 Thu Oct 13 19:33:05 2005+++ llvm/include/llvm/Support/CommandLine.h Sat Oct 22 23:37:19 2005@@ -21,6 +21,7 @@ #define LLVM_SUPPORT_COMMANDLINE_H #include "llvm/Support/type_traits.h"+#include "llvm/Support/DataTypes.h" #include #include #include @@ -335,7 +336,7 @@ template ValuesClass values(const char *Arg, DataType Val, const char *Desc,- ...) {+ ...) END_WITH_NULL { va_list ValueArgs; va_start(ValueArgs, Desc); ValuesClass Vals(Arg, Val, Desc, ValueArgs);Index: llvm/include/llvm/Support/DataTypes.h.indiff -u llvm/include/llvm/Support/DataTypes.h.in:1.20 llvm/include/llvm/Support/DataTypes.h.in:1.21--- llvm/include/llvm/Support/DataTypes.h.in:1.20 Wed Jul 27 00:53:43 2005+++ llvm/include/llvm/Support/DataTypes.h.in Sat Oct 22 23:37:19 2005@@ -98,4 +98,10 @@ # define UINT64_MAX 0xULL #endif+#if __GNUC__ > 3+#define END_WITH_NULL __attribute__((sentinel))+#else+#define END_WITH_NULL+#endif+ #endif /* SUPPORT_DATATYPES_H */___llvm-commits mailing listllvm-commits@cs.uiuc.eduhttp://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/win32/TableGen/TableGen.vcproj
Changes in directory llvm/win32/TableGen: TableGen.vcproj updated: 1.15 -> 1.16 --- Log message: Remove deleted files from Visual Studio. --- Diffs of the changes: (+0 -6) TableGen.vcproj |6 -- 1 files changed, 6 deletions(-) Index: llvm/win32/TableGen/TableGen.vcproj diff -u llvm/win32/TableGen/TableGen.vcproj:1.15 llvm/win32/TableGen/TableGen.vcproj:1.16 --- llvm/win32/TableGen/TableGen.vcproj:1.15Sat Oct 22 20:22:33 2005 +++ llvm/win32/TableGen/TableGen.vcproj Sun Oct 23 10:21:52 2005 @@ -183,9 +183,6 @@ RelativePath="..\..\utils\TableGen\InstrInfoEmitter.cpp"> - - - - http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/include/llvm/Support/CommandLine.h
Changes in directory llvm/include/llvm/Support: CommandLine.h updated: 1.50 -> 1.51 --- Log message: Work around GCC's dislike of attributes on function definitions. --- Diffs of the changes: (+6 -1) CommandLine.h |7 ++- 1 files changed, 6 insertions(+), 1 deletion(-) Index: llvm/include/llvm/Support/CommandLine.h diff -u llvm/include/llvm/Support/CommandLine.h:1.50 llvm/include/llvm/Support/CommandLine.h:1.51 --- llvm/include/llvm/Support/CommandLine.h:1.50Sat Oct 22 23:37:19 2005 +++ llvm/include/llvm/Support/CommandLine.h Sun Oct 23 10:22:50 2005 @@ -334,9 +334,14 @@ } }; +// Silly GCC doesn't allow attributes on a function definition. template ValuesClass values(const char *Arg, DataType Val, const char *Desc, - ...) END_WITH_NULL { + ...) END_WITH_NULL; + +template +ValuesClass values(const char *Arg, DataType Val, const char *Desc, + ...) { va_list ValueArgs; va_start(ValueArgs, Desc); ValuesClass Vals(Arg, Val, Desc, ValueArgs); ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm-www/pubs/2005-10-20-LCPC-RegAlloc.html 2005-10-20-LCPC-RegAlloc.pdf index.html
Changes in directory llvm-www/pubs: 2005-10-20-LCPC-RegAlloc.html added (r1.1) 2005-10-20-LCPC-RegAlloc.pdf added (r1.1) index.html updated: 1.26 -> 1.27 --- Log message: add a new paper that uses LLVM --- Diffs of the changes: (+67 -0) 2005-10-20-LCPC-RegAlloc.html | 60 ++ 2005-10-20-LCPC-RegAlloc.pdf |0 index.html|7 3 files changed, 67 insertions(+) Index: llvm-www/pubs/2005-10-20-LCPC-RegAlloc.html diff -c /dev/null llvm-www/pubs/2005-10-20-LCPC-RegAlloc.html:1.1 *** /dev/null Sun Oct 23 12:24:10 2005 --- llvm-www/pubs/2005-10-20-LCPC-RegAlloc.html Sun Oct 23 12:24:00 2005 *** *** 0 --- 1,60 + + + + + + Revisiting Graph Coloring Register Allocation: A Study of the Chaitin-Briggs + and Callahan-Koblenz Algorithms + + + + + Revisiting Graph Coloring Register Allocation: A Study of the Chaitin-Briggs + and Callahan-Koblenz Algorithms + + Keith Cooper, Anshuman Dasgupta, and Jason Eckhardt + + + + Abstract: + + + Techniques for global register allocation via graph coloring have + been extensively studied and widely implemented in compiler frameworks. This + paper examines a particular variant - the Callahan Koblenz allocator - and + compares it to the Chaitin-Briggs graph coloring register allocator. Both al- + gorithms were published in the 1990's, yet the academic literature does not + contain an assessment of the Callahan-Koblenz allocator. This paper evaluates + and contrasts the allocation decisions made by both algorithms. In particular, + we focus on two key differences between the allocators: + Spill code: The Callahan-Koblenz allocator attempts to minimize the effect of + spill code by using program structure to guide allocation and spill code place- + ment. We evaluate the impact of this strategy on allocated code. + Copy elimination: Effective register-to-register copy removal is important for + producing good code. The allocators use different techniques to eliminate these + copies. We compare the mechanisms and provide insights into the relative per- + formance of the contrasting techniques. + The Callahan-Koblenz allocator may potentially insert extra branches as part + of the allocation process. We also measure the performance overhead due to + these branches. + + + + Published: + + "Revisiting Graph Coloring Register Allocation: A Study of the Chaitin-Briggs +and Callahan-Koblenz Algorithms" + By Keith Cooper, Anshuman Dasgupta, and Jason Eckhardt. + Proceedings of the Workshop on Languages and Compilers for Parallel + Computing (LCPC'05), Hawthorne, NY, October 20-22, 2005 + + + Download: + + Revisiting Graph Coloring Register +Allocation: A Study of the Chaitin-Briggs +and Callahan-Koblenz Algorithms (PDF) + + + + Index: llvm-www/pubs/2005-10-20-LCPC-RegAlloc.pdf Index: llvm-www/pubs/index.html diff -u llvm-www/pubs/index.html:1.26 llvm-www/pubs/index.html:1.27 --- llvm-www/pubs/index.html:1.26 Sat Oct 22 16:48:02 2005 +++ llvm-www/pubs/index.htmlSun Oct 23 12:24:00 2005 @@ -45,6 +45,13 @@ +"Revisiting Graph Coloring Register + Allocation: A Study of the Chaitin-Briggs and Callahan-Koblenz + Algorithms" + By Keith Cooper, Anshuman Dasgupta, and Jason Eckhardt. + Proceedings of the Workshop on Languages and Compilers for Parallel + Computing (LCPC'05), Hawthorne, NY, October 20-22, 2005 + "Segment Protection for Embedded Systems Using Run-time Checks" By Matthew Simpson, Bhuvan Middha and Rajeev Barua ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm-www/pubs/2004-01-30-CGO-LLVM.html index.html
Changes in directory llvm-www/pubs: 2004-01-30-CGO-LLVM.html updated: 1.3 -> 1.4 index.html updated: 1.27 -> 1.28 --- Log message: remove an old tech report from the main page to reduce clutter --- Diffs of the changes: (+3 -7) 2004-01-30-CGO-LLVM.html |2 ++ index.html |8 +--- 2 files changed, 3 insertions(+), 7 deletions(-) Index: llvm-www/pubs/2004-01-30-CGO-LLVM.html diff -u llvm-www/pubs/2004-01-30-CGO-LLVM.html:1.3 llvm-www/pubs/2004-01-30-CGO-LLVM.html:1.4 --- llvm-www/pubs/2004-01-30-CGO-LLVM.html:1.3 Wed Mar 31 22:41:00 2004 +++ llvm-www/pubs/2004-01-30-CGO-LLVM.html Sun Oct 23 13:01:09 2005 @@ -43,6 +43,8 @@ challenging compiler problems. +Note this paper supersedes the earlier tech report. + Published: "LLVM: A Compilation Framework for Lifelong Program Analysis & Transformation", Chris Lattner and Vikram Adve. Index: llvm-www/pubs/index.html diff -u llvm-www/pubs/index.html:1.27 llvm-www/pubs/index.html:1.28 --- llvm-www/pubs/index.html:1.27 Sun Oct 23 12:24:00 2005 +++ llvm-www/pubs/index.htmlSun Oct 23 13:01:09 2005 @@ -11,13 +11,7 @@ Lifelong Program Analysis & Transformation" Chris Lattner and Vikram Adve Proc. of the 2004 International Symposium on Code Generation and Optimization (CGO'04), Palo Alto, California, Mar. -2004. - -A previous version is available as: -"LLVM: A Compilation -Framework for Lifelong Program Analysis & Transformation" Chris -Lattner & Vikram Adve Technical Report #UIUCDCS-R-2003-2380, Computer -Science Dept., Univ. of Illinois, Sep. 2003. +2004. "LLVA: A Low-level Virtual Instruction Set Architecture" Vikram Adve, Chris Lattner, Michael Brukman, Anand Shukla, ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm-www/pubs/2002-12-LattnerMSThesis.html index.html
Changes in directory llvm-www/pubs: 2002-12-LattnerMSThesis.html updated: 1.5 -> 1.6 index.html updated: 1.28 -> 1.29 --- Log message: demote another *really* old tech report from the main page --- Diffs of the changes: (+5 -5) 2002-12-LattnerMSThesis.html |5 + index.html |5 - 2 files changed, 5 insertions(+), 5 deletions(-) Index: llvm-www/pubs/2002-12-LattnerMSThesis.html diff -u llvm-www/pubs/2002-12-LattnerMSThesis.html:1.5 llvm-www/pubs/2002-12-LattnerMSThesis.html:1.6 --- llvm-www/pubs/2002-12-LattnerMSThesis.html:1.5 Sun Nov 16 13:36:07 2003 +++ llvm-www/pubs/2002-12-LattnerMSThesis.html Sun Oct 23 13:03:03 2005 @@ -52,6 +52,11 @@ href="http://llvm.cs.uiuc.edu/";>http://llvm.cs.uiuc.edu/ + +This thesis supercedes an older +technical report. + + Published: "LLVM: An Infrastructure for Multi-Stage Optimization", Chris Lattner. Index: llvm-www/pubs/index.html diff -u llvm-www/pubs/index.html:1.28 llvm-www/pubs/index.html:1.29 --- llvm-www/pubs/index.html:1.28 Sun Oct 23 13:01:09 2005 +++ llvm-www/pubs/index.htmlSun Oct 23 13:03:03 2005 @@ -28,11 +28,6 @@ Computer Science Dept., University of Illinois at Urbana-Champaign, Dec. 2002 -"The LLVM Instruction Set -and Compilation Strategy" Chris Lattner & Vikram Adve Technical -Report #UIUCDCS-R-2002-2292, Computer Science Dept., Univ. of Illinois, Aug. -2002. - Publications using LLVM ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Target/X86/README.txt
Changes in directory llvm/lib/Target/X86: README.txt updated: 1.14 -> 1.15 --- Log message: Put some of my random notes somewhere public --- Diffs of the changes: (+70 -0) README.txt | 70 + 1 files changed, 70 insertions(+) Index: llvm/lib/Target/X86/README.txt diff -u /dev/null llvm/lib/Target/X86/README.txt:1.15 --- /dev/null Sun Oct 23 14:52:52 2005 +++ llvm/lib/Target/X86/README.txt Sun Oct 23 14:52:42 2005 @@ -0,0 +1,70 @@ +//===-===// +// Random ideas for the X86 backend. +//===-===// + +Add a MUL2U and MUL2S nodes to represent a multiply that returns both the +Hi and Lo parts (combination of MUL and MULH[SU] into one node). Add this to +X86, & make the dag combiner produce it when needed. This will eliminate one +imul from the code generated for: + +long long test(long long X, long long Y) { return X*Y; } + +by using the EAX result from the mul. We should add a similar node for +DIVREM. + +//===-===// + +This should be one DIV/IDIV instruction, not a libcall: + +unsigned test(unsigned long long X, unsigned Y) { +return X/Y; +} + +This can be done trivially with a custom legalizer. What about overflow +though? http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14224 + +//===-===// + +Need to add support for rotate instructions. + +//===-===// + +Some targets (e.g. athlons) prefer freep to fstp ST(0): +http://gcc.gnu.org/ml/gcc-patches/2004-04/msg00659.html + +//===-===// + +This should use faddi on chips where it is profitable: +double foo(double P, int *I) { return P+*I; } + +//===-===// + +The FP stackifier needs to be global. Also, it should handle simple permutates +to reduce number of shuffle instructions, e.g. turning: + +fld P -> fld Q +fld Q fld P +fxch + +or: + +fxch -> fucomi +fucomi jl X +jg X + +//===-===// + +Improvements to the multiply -> shift/add algorithm: +http://gcc.gnu.org/ml/gcc-patches/2004-08/msg01590.html + +//===-===// + +Improve code like this (occurs fairly frequently, e.g. in LLVM): +long long foo(int x) { return 1LL << x; } + +http://gcc.gnu.org/ml/gcc-patches/2004-09/msg01109.html +http://gcc.gnu.org/ml/gcc-patches/2004-09/msg01128.html +http://gcc.gnu.org/ml/gcc-patches/2004-09/msg01136.html + +Another useful one would be ~0ULL >> X and ~0ULL << X. + ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Target/X86/README.txt
Changes in directory llvm/lib/Target/X86: README.txt updated: 1.15 -> 1.16 --- Log message: add a note that Nate mentioned last week --- Diffs of the changes: (+5 -0) README.txt |5 + 1 files changed, 5 insertions(+) Index: llvm/lib/Target/X86/README.txt diff -u llvm/lib/Target/X86/README.txt:1.15 llvm/lib/Target/X86/README.txt:1.16 --- llvm/lib/Target/X86/README.txt:1.15 Sun Oct 23 14:52:42 2005 +++ llvm/lib/Target/X86/README.txt Sun Oct 23 16:45:00 2005 @@ -68,3 +68,8 @@ Another useful one would be ~0ULL >> X and ~0ULL << X. +//===-===// + +Should support emission of the bswap instruction, probably by adding a new +DAG node for byte swapping. Also useful on PPC which has byte-swapping loads. + ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Target/TargetSchedule.td
Changes in directory llvm/lib/Target: TargetSchedule.td updated: 1.3 -> 1.4 --- Log message: add a marker --- Diffs of the changes: (+5 -0) TargetSchedule.td |5 + 1 files changed, 5 insertions(+) Index: llvm/lib/Target/TargetSchedule.td diff -u llvm/lib/Target/TargetSchedule.td:1.3 llvm/lib/Target/TargetSchedule.td:1.4 --- llvm/lib/Target/TargetSchedule.td:1.3 Fri Oct 21 14:02:44 2005 +++ llvm/lib/Target/TargetSchedule.td Sun Oct 23 17:07:20 2005 @@ -64,3 +64,8 @@ class ProcessorItineraries iid> { list IID = iid; } + +// NoItineraries - A marker that can be used by processors without schedule +// info. +def NoItineraries : ProcessorItineraries<[]>; + ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Target/PowerPC/PPC.td
Changes in directory llvm/lib/Target/PowerPC: PPC.td updated: 1.7 -> 1.8 --- Log message: rearrange things a bit so that instructions can use subtarget features in the future. --- Diffs of the changes: (+9 -11) PPC.td | 20 +--- 1 files changed, 9 insertions(+), 11 deletions(-) Index: llvm/lib/Target/PowerPC/PPC.td diff -u llvm/lib/Target/PowerPC/PPC.td:1.7 llvm/lib/Target/PowerPC/PPC.td:1.8 --- llvm/lib/Target/PowerPC/PPC.td:1.7 Sun Oct 23 00:28:51 2005 +++ llvm/lib/Target/PowerPC/PPC.td Sun Oct 23 17:08:13 2005 @@ -16,16 +16,6 @@ include "../Target.td" //===--===// -// Register File Description -//===--===// - -include "PPCRegisterInfo.td" -include "PPCSchedule.td" -include "PPCInstrInfo.td" - - - -//===--===// // PowerPC Subtarget features. // @@ -41,7 +31,15 @@ "Enable the fsqrt instruction">; //===--===// -// PowerPC chips sets supported. +// Register File Description +//===--===// + +include "PPCRegisterInfo.td" +include "PPCSchedule.td" +include "PPCInstrInfo.td" + +//===--===// +// PowerPC processors supported. // def : Processor<"generic", G3Itineraries, []>; ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Target/Alpha/Alpha.td
Changes in directory llvm/lib/Target/Alpha: Alpha.td updated: 1.4 -> 1.5 --- Log message: Add subtarget feature/processor defns to the .td file --- Diffs of the changes: (+22 -0) Alpha.td | 22 ++ 1 files changed, 22 insertions(+) Index: llvm/lib/Target/Alpha/Alpha.td diff -u llvm/lib/Target/Alpha/Alpha.td:1.4 llvm/lib/Target/Alpha/Alpha.td:1.5 --- llvm/lib/Target/Alpha/Alpha.td:1.4 Thu Jun 23 18:42:05 2005 +++ llvm/lib/Target/Alpha/Alpha.td Sun Oct 23 17:08:45 2005 @@ -17,6 +17,13 @@ //Alpha is little endian //===--===// +// Subtarget Features +//===--===// + +def FeatureCIX : SubtargetFeature<"CIX", "Enable CIX extentions">; +def FeatureFIX : SubtargetFeature<"FIX", "Enable FIX extentions">; + +//===--===// // Register File Description //===--===// @@ -36,6 +43,21 @@ // let TSFlagsShifts = []; } +//===--===// +// Alpha Processor Definitions +//===--===// + +def : Processor<"generic", NoItineraries, []>; +def : Processor<"pca56" , NoItineraries, []>; +def : Processor<"ev56" , NoItineraries, []>; +def : Processor<"ev6", NoItineraries, [FeatureFIX]>; +def : Processor<"ev67" , NoItineraries, [FeatureFIX, FeatureCIX]>; + +//===--===// +// The Alpha Target +//===--===// + + def Alpha : Target { // Pointers on Alpha are 64-bits in size. let PointerType = i64; ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Target/Alpha/AlphaSubtarget.cpp Makefile
Changes in directory llvm/lib/Target/Alpha: AlphaSubtarget.cpp updated: 1.3 -> 1.4 Makefile updated: 1.3 -> 1.4 --- Log message: Autogen subtarget information from .td files. --- Diffs of the changes: (+12 -35) AlphaSubtarget.cpp | 44 ++-- Makefile |3 ++- 2 files changed, 12 insertions(+), 35 deletions(-) Index: llvm/lib/Target/Alpha/AlphaSubtarget.cpp diff -u llvm/lib/Target/Alpha/AlphaSubtarget.cpp:1.3 llvm/lib/Target/Alpha/AlphaSubtarget.cpp:1.4 --- llvm/lib/Target/Alpha/AlphaSubtarget.cpp:1.3Sun Oct 2 02:13:52 2005 +++ llvm/lib/Target/Alpha/AlphaSubtarget.cppSun Oct 23 17:15:34 2005 @@ -16,46 +16,22 @@ #include "llvm/Module.h" #include "llvm/Support/CommandLine.h" #include "llvm/Target/SubtargetFeature.h" -#include "llvm/Support/Debug.h" - +#include "AlphaGenSubtarget.inc" using namespace llvm; -enum AlphaFeature { - AlphaFeatureCIX = 1 << 0, - AlphaFeatureFIX = 1 << 1, -}; -/// Sorted (by key) array of values for CPU subtype. -static const SubtargetFeatureKV AlphaSubTypeKV[] = { - { "ev56", "Select the Alpha EV56 processor", 0 }, - { "ev6", "Select the Alpha EV6 processor", AlphaFeatureFIX }, - { "ev67", "Select the Alpha EV67 processor", AlphaFeatureFIX | AlphaFeatureCIX }, - { "generic", "Select instructions for a generic Alpha processor (EV56)", 0 }, - { "pca56", "Select the Alpha PCA56 processor", 0 }, +enum { + FeatureKVSize = sizeof(FeatureKV) / sizeof(SubtargetFeatureKV), + SubTypeKVSize = sizeof(SubTypeKV) / sizeof(SubtargetFeatureKV) }; -/// Length of AlphaSubTypeKV. -static const unsigned AlphaSubTypeKVSize = sizeof(AlphaSubTypeKV) - / sizeof(SubtargetFeatureKV); - -/// Sorted (by key) array of values for CPU features. -static SubtargetFeatureKV AlphaFeatureKV[] = { - { "CIX", "Should CIX extentions be used" , AlphaFeatureCIX }, - { "FIX" , "Should FIX extentions be used" , AlphaFeatureFIX }, - }; -/// Length of AlphaFeatureKV. -static const unsigned AlphaFeatureKVSize = sizeof(AlphaFeatureKV) - / sizeof(SubtargetFeatureKV); - AlphaSubtarget::AlphaSubtarget(const Module &M, const std::string &FS) - :HasF2I(false), HasCT(false) -{ + : HasF2I(false), HasCT(false) { std::string CPU = "generic"; uint32_t Bits = - SubtargetFeatures::Parse(FS, CPU, - AlphaSubTypeKV, AlphaSubTypeKVSize, - AlphaFeatureKV, AlphaFeatureKVSize); - HasF2I = (Bits & AlphaFeatureFIX) != 0; - HasCT = (Bits & AlphaFeatureCIX) != 0; - +SubtargetFeatures::Parse(FS, CPU, + SubTypeKV, SubTypeKVSize, + FeatureKV, FeatureKVSize); + HasF2I = (Bits & FeatureFIX) != 0; + HasCT = (Bits & FeatureCIX) != 0; } Index: llvm/lib/Target/Alpha/Makefile diff -u llvm/lib/Target/Alpha/Makefile:1.3 llvm/lib/Target/Alpha/Makefile:1.4 --- llvm/lib/Target/Alpha/Makefile:1.3 Wed Oct 19 19:28:31 2005 +++ llvm/lib/Target/Alpha/Makefile Sun Oct 23 17:15:34 2005 @@ -14,6 +14,7 @@ BUILT_SOURCES = AlphaGenRegisterInfo.h.inc AlphaGenRegisterNames.inc \ AlphaGenRegisterInfo.inc AlphaGenInstrNames.inc \ AlphaGenInstrInfo.inc AlphaGenCodeEmitter.inc \ -AlphaGenAsmWriter.inc AlphaGenDAGISel.inc +AlphaGenAsmWriter.inc AlphaGenDAGISel.inc \ +AlphaGenSubtarget.inc include $(LEVEL)/Makefile.common ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Target/SubtargetFeature.cpp
Changes in directory llvm/lib/Target: SubtargetFeature.cpp updated: 1.6 -> 1.7 --- Log message: If a user requests help, give them help on both features and processors --- Diffs of the changes: (+41 -25) SubtargetFeature.cpp | 66 +++ 1 files changed, 41 insertions(+), 25 deletions(-) Index: llvm/lib/Target/SubtargetFeature.cpp diff -u llvm/lib/Target/SubtargetFeature.cpp:1.6 llvm/lib/Target/SubtargetFeature.cpp:1.7 --- llvm/lib/Target/SubtargetFeature.cpp:1.6Sun Oct 23 00:33:39 2005 +++ llvm/lib/Target/SubtargetFeature.cppSun Oct 23 17:23:13 2005 @@ -123,31 +123,42 @@ return F; } -/// Display help for feature choices. +/// getLongestEntryLength - Return the length of the longest entry in the table. /// -static void Help(bool isFeature, const SubtargetFeatureKV *Table, - size_t TableSize) { - // Determine the length of the longest key. +static size_t getLongestEntryLength(const SubtargetFeatureKV *Table, +size_t Size) { size_t MaxLen = 0; - for (size_t i = 0; i < TableSize; i++) + for (size_t i = 0; i < Size; i++) MaxLen = std::max(MaxLen, std::strlen(Table[i].Key)); - - std::cerr << "Available " << (isFeature ? "features" : "CPUs") -<< " for this target:\n\n"; - - for (size_t i = 0; i < TableSize; i++) { -// Compute required padding -size_t Pad = MaxLen - std::strlen(Table[i].Key); -std::cerr << Table[i].Key << std::string(Pad, ' ') << " - " - << Table[i].Desc << ".\n"; - } + return MaxLen; +} +/// Display help for feature choices. +/// +static void Help(const SubtargetFeatureKV *CPUTable, size_t CPUTableSize, + const SubtargetFeatureKV *FeatTable, size_t FeatTableSize) { + // Determine the length of the longest CPU and Feature entries. + unsigned MaxCPULen = getLongestEntryLength(CPUTable, CPUTableSize); + unsigned MaxFeatLen = getLongestEntryLength(FeatTable, FeatTableSize); + + // Print the CPU table. + std::cerr << "Available CPUs for this target:\n\n"; + for (size_t i = 0; i != CPUTableSize; i++) +std::cerr << " " << CPUTable[i].Key + << std::string(MaxCPULen - std::strlen(CPUTable[i].Key), ' ') + << " - " << CPUTable[i].Desc << ".\n"; std::cerr << "\n"; - if (isFeature) { -std::cerr - << "Use +feature to enable a feature, or -feature to disable it.\n" - << "For example, llc -mcpu=mycpu -mattr=+feature1,-feature2\n"; - } + + // Print the Feature table. + std::cerr << "Available features for this target:\n\n"; + for (size_t i = 0; i != FeatTableSize; i++) +std::cerr << " " << FeatTable[i].Key + << std::string(MaxFeatLen - std::strlen(FeatTable[i].Key), ' ') + << " - " << FeatTable[i].Desc << ".\n"; + std::cerr << "\n"; + + std::cerr << "Use +feature to enable a feature, or -feature to disable it.\n" +<< "For example, llc -mcpu=mycpu -mattr=+feature1,-feature2\n"; exit(1); } @@ -203,10 +214,13 @@ uint32_t Bits = 0;// Resulting bits // Split up features Split(Features, String); + // Check if default is needed - if (Features[0].empty()) Features[0] = DefaultCPU; - // Check for help - if (Features[0] == "help") Help(false, CPUTable, CPUTableSize); + if (Features[0].empty()) +Features[0] = DefaultCPU; + else if (Features[0] == "help") +Help(CPUTable, CPUTableSize, FeatureTable, FeatureTableSize); + // Find CPU entry const SubtargetFeatureKV *CPUEntry = Find(Features[0], CPUTable, CPUTableSize); @@ -222,10 +236,12 @@ } // Iterate through each feature for (size_t i = 1; i < Features.size(); i++) { -// Get next feature const std::string &Feature = Features[i]; + // Check for help -if (Feature == "+help") Help(true, FeatureTable, FeatureTableSize); +if (Feature == "+help") + Help(CPUTable, CPUTableSize, FeatureTable, FeatureTableSize); + // Find feature in table. const SubtargetFeatureKV *FeatureEntry = Find(StripFlag(Feature), FeatureTable, FeatureTableSize); ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Target/PowerPC/PPC.td
Changes in directory llvm/lib/Target/PowerPC: PPC.td updated: 1.8 -> 1.9 --- Log message: mark this as beta --- Diffs of the changes: (+1 -1) PPC.td |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index: llvm/lib/Target/PowerPC/PPC.td diff -u llvm/lib/Target/PowerPC/PPC.td:1.8 llvm/lib/Target/PowerPC/PPC.td:1.9 --- llvm/lib/Target/PowerPC/PPC.td:1.8 Sun Oct 23 17:08:13 2005 +++ llvm/lib/Target/PowerPC/PPC.td Sun Oct 23 17:23:45 2005 @@ -22,7 +22,7 @@ def Feature64Bit : SubtargetFeature<"64bit", "Enable 64-bit instructions">; def Feature64BitRegs : SubtargetFeature<"64bitregs", -"Enable 64-bit registers">; +"Enable 64-bit registers [beta]">; def FeatureAltivec : SubtargetFeature<"altivec", "Enable Altivec instructions">; def FeatureGPUL : SubtargetFeature<"gpul", ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Target/Alpha/AlphaSubtarget.cpp
Changes in directory llvm/lib/Target/Alpha: AlphaSubtarget.cpp updated: 1.4 -> 1.5 --- Log message: Simplify this due to changes in the tblgen side --- Diffs of the changes: (+0 -9) AlphaSubtarget.cpp |9 - 1 files changed, 9 deletions(-) Index: llvm/lib/Target/Alpha/AlphaSubtarget.cpp diff -u llvm/lib/Target/Alpha/AlphaSubtarget.cpp:1.4 llvm/lib/Target/Alpha/AlphaSubtarget.cpp:1.5 --- llvm/lib/Target/Alpha/AlphaSubtarget.cpp:1.4Sun Oct 23 17:15:34 2005 +++ llvm/lib/Target/Alpha/AlphaSubtarget.cppSun Oct 23 17:33:22 2005 @@ -13,18 +13,9 @@ #include "AlphaSubtarget.h" #include "Alpha.h" -#include "llvm/Module.h" -#include "llvm/Support/CommandLine.h" -#include "llvm/Target/SubtargetFeature.h" #include "AlphaGenSubtarget.inc" using namespace llvm; - -enum { - FeatureKVSize = sizeof(FeatureKV) / sizeof(SubtargetFeatureKV), - SubTypeKVSize = sizeof(SubTypeKV) / sizeof(SubtargetFeatureKV) -}; - AlphaSubtarget::AlphaSubtarget(const Module &M, const std::string &FS) : HasF2I(false), HasCT(false) { std::string CPU = "generic"; ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/utils/TableGen/SubtargetEmitter.cpp
Changes in directory llvm/utils/TableGen: SubtargetEmitter.cpp updated: 1.2 -> 1.3 --- Log message: Add the needed #include, emit enums with the sizes of tables, remove definitions from the LLVM namespace, since they are all static. --- Diffs of the changes: (+12 -9) SubtargetEmitter.cpp | 21 - 1 files changed, 12 insertions(+), 9 deletions(-) Index: llvm/utils/TableGen/SubtargetEmitter.cpp diff -u llvm/utils/TableGen/SubtargetEmitter.cpp:1.2 llvm/utils/TableGen/SubtargetEmitter.cpp:1.3 --- llvm/utils/TableGen/SubtargetEmitter.cpp:1.2Sat Oct 22 02:59:56 2005 +++ llvm/utils/TableGen/SubtargetEmitter.cppSun Oct 23 17:33:08 2005 @@ -57,7 +57,7 @@ RecordList Processors = Records.getAllDerivedDefinitions("Processor"); sort(Processors.begin(), Processors.end(), LessRecordFieldName()); - OS << "namespace llvm {\n\n"; + OS << "#include \"llvm/Target/SubtargetFeature.h\"\n\n"; { // Feature enumeration int i = 0; @@ -78,9 +78,9 @@ } { // Feature key values -OS << "\n\n" - << "/// Sorted (by key) array of values for CPU features.\n" - << "static SubtargetFeatureKV FeatureKV[] = {\n"; +OS << "\n" + << "// Sorted (by key) array of values for CPU features.\n" + << "static llvm::SubtargetFeatureKV FeatureKV[] = {\n"; for (RecordListIter RI = Features.begin(), E = Features.end(); RI != E;) { Record *R = *RI++; std::string Instance = R->getName(); @@ -96,9 +96,9 @@ } { // CPU key values -OS << "\n\n" - << "/// Sorted (by key) array of values for CPU subtype.\n" - << "static const SubtargetFeatureKV SubTypeKV[] = {\n"; +OS << "\n" + << "// Sorted (by key) array of values for CPU subtype.\n" + << "static const llvm::SubtargetFeatureKV SubTypeKV[] = {\n"; for (RecordListIter RI = Processors.begin(), E = Processors.end(); RI != E;) { Record *R = *RI++; @@ -131,6 +131,9 @@ } OS << "};\n"; } - - OS << "\n} // End llvm namespace \n"; + + OS<<"\nenum {\n"; + OS<<" FeatureKVSize = sizeof(FeatureKV)/sizeof(llvm::SubtargetFeatureKV),\n"; + OS<<" SubTypeKVSize = sizeof(SubTypeKV)/sizeof(llvm::SubtargetFeatureKV)\n"; + OS<<"};\n"; } ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Target/PowerPC/PPCSubtarget.cpp
Changes in directory llvm/lib/Target/PowerPC: PPCSubtarget.cpp updated: 1.11 -> 1.12 --- Log message: Simplify this, matching changes in the tblgen emitter --- Diffs of the changes: (+0 -9) PPCSubtarget.cpp |9 - 1 files changed, 9 deletions(-) Index: llvm/lib/Target/PowerPC/PPCSubtarget.cpp diff -u llvm/lib/Target/PowerPC/PPCSubtarget.cpp:1.11 llvm/lib/Target/PowerPC/PPCSubtarget.cpp:1.12 --- llvm/lib/Target/PowerPC/PPCSubtarget.cpp:1.11 Fri Oct 21 14:02:44 2005 +++ llvm/lib/Target/PowerPC/PPCSubtarget.cppSun Oct 23 17:34:25 2005 @@ -15,7 +15,6 @@ #include "PPC.h" #include "llvm/Module.h" #include "llvm/Support/CommandLine.h" -#include "llvm/Target/SubtargetFeature.h" #include "PPCGenSubtarget.inc" using namespace llvm; @@ -32,14 +31,6 @@ cl::location(PPCTarget), cl::init(TargetDefault)); } -/// Length of FeatureKV. -static const unsigned FeatureKVSize = sizeof(FeatureKV) - / sizeof(SubtargetFeatureKV); -/// Length of SubTypeKV. -static const unsigned SubTypeKVSize = sizeof(SubTypeKV) - / sizeof(SubtargetFeatureKV); - - #if defined(__APPLE__) #include #include ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/tools/llc/llc.cpp
Changes in directory llvm/tools/llc: llc.cpp updated: 1.114 -> 1.115 --- Log message: shrinkify the option name a bit --- Diffs of the changes: (+2 -2) llc.cpp |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) Index: llvm/tools/llc/llc.cpp diff -u llvm/tools/llc/llc.cpp:1.114 llvm/tools/llc/llc.cpp:1.115 --- llvm/tools/llc/llc.cpp:1.114Sat Oct 22 17:00:45 2005 +++ llvm/tools/llc/llc.cpp Sun Oct 23 17:35:42 2005 @@ -50,14 +50,14 @@ static cl::opt MCPU("mcpu", - cl::desc("Target a specific cpu type (-mcpu=help for list of choices)"), + cl::desc("Target a specific cpu type (-mcpu=help for details)"), cl::value_desc("cpu-name"), cl::init("")); static cl::list MAttrs("mattr", cl::CommaSeparated, - cl::desc("Target specific attributes (-mattr=help for list of choices)"), + cl::desc("Target specific attributes (-mattr=help for details)"), cl::value_desc("attr1,+attr2, ..., -attrN")); cl::opt ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/examples/SIMD/MADFilter/
Changes in directory llvm/examples/SIMD/MADFilter: --- Log message: Directory /home/vadve/shared/PublicCVS/llvm/examples/SIMD/MADFilter added to the repository --> Using per-directory sticky tag `vector_llvm' --- Diffs of the changes: (+0 -0) 0 files changed ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/examples/SIMD/InterQuant/
Changes in directory llvm/examples/SIMD/InterQuant: --- Log message: Directory /home/vadve/shared/PublicCVS/llvm/examples/SIMD/InterQuant added to the repository --> Using per-directory sticky tag `vector_llvm' --- Diffs of the changes: (+0 -0) 0 files changed ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/examples/SIMD/
Changes in directory llvm/examples/SIMD: --- Log message: Directory /home/vadve/shared/PublicCVS/llvm/examples/SIMD added to the repository --> Using per-directory sticky tag `vector_llvm' --- Diffs of the changes: (+0 -0) 0 files changed ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/examples/SIMD/Saxpy/
Changes in directory llvm/examples/SIMD/Saxpy: --- Log message: Directory /home/vadve/shared/PublicCVS/llvm/examples/SIMD/Saxpy added to the repository --> Using per-directory sticky tag `vector_llvm' --- Diffs of the changes: (+0 -0) 0 files changed ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/examples/SIMD/DCT/
Changes in directory llvm/examples/SIMD/DCT: --- Log message: Directory /home/vadve/shared/PublicCVS/llvm/examples/SIMD/DCT added to the repository --> Using per-directory sticky tag `vector_llvm' --- Diffs of the changes: (+0 -0) 0 files changed ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/examples/SIMD/RGB2YUV/
Changes in directory llvm/examples/SIMD/RGB2YUV: --- Log message: Directory /home/vadve/shared/PublicCVS/llvm/examples/SIMD/RGB2YUV added to the repository --> Using per-directory sticky tag `vector_llvm' --- Diffs of the changes: (+0 -0) 0 files changed ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/tools/llc/llc.cpp
Changes in directory llvm/tools/llc: llc.cpp updated: 1.115 -> 1.116 --- Log message: Shrinkify to make --help output look better --- Diffs of the changes: (+1 -1) llc.cpp |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index: llvm/tools/llc/llc.cpp diff -u llvm/tools/llc/llc.cpp:1.115 llvm/tools/llc/llc.cpp:1.116 --- llvm/tools/llc/llc.cpp:1.115Sun Oct 23 17:35:42 2005 +++ llvm/tools/llc/llc.cpp Sun Oct 23 17:37:13 2005 @@ -58,7 +58,7 @@ MAttrs("mattr", cl::CommaSeparated, cl::desc("Target specific attributes (-mattr=help for details)"), - cl::value_desc("attr1,+attr2, ..., -attrN")); + cl::value_desc("a1,+a2,-a3,...")); cl::opt FileType("filetype", cl::init(TargetMachine::AssemblyFile), ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/examples/SIMD/Transpose/
Changes in directory llvm/examples/SIMD/Transpose: --- Log message: Directory /home/vadve/shared/PublicCVS/llvm/examples/SIMD/Transpose added to the repository --> Using per-directory sticky tag `vector_llvm' --- Diffs of the changes: (+0 -0) 0 files changed ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/ExecutionEngine/JIT/TargetSelect.cpp
Changes in directory llvm/lib/ExecutionEngine/JIT: TargetSelect.cpp updated: 1.9 -> 1.10 --- Log message: Shrinkify to match llc --- Diffs of the changes: (+3 -3) TargetSelect.cpp |6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) Index: llvm/lib/ExecutionEngine/JIT/TargetSelect.cpp diff -u llvm/lib/ExecutionEngine/JIT/TargetSelect.cpp:1.9 llvm/lib/ExecutionEngine/JIT/TargetSelect.cpp:1.10 --- llvm/lib/ExecutionEngine/JIT/TargetSelect.cpp:1.9 Fri Sep 2 14:27:43 2005 +++ llvm/lib/ExecutionEngine/JIT/TargetSelect.cpp Sun Oct 23 17:39:01 2005 @@ -26,15 +26,15 @@ static cl::opt MCPU("mcpu", - cl::desc("Target a specific cpu type (-mcpu=help for list of choices)"), + cl::desc("Target a specific cpu type (-mcpu=help for details)"), cl::value_desc("cpu-name"), cl::init("")); static cl::list MAttrs("mattr", cl::CommaSeparated, - cl::desc("Target specific attributes (-mattr=help for list of choices)"), - cl::value_desc("attr1,+attr2, ..., -attrN")); + cl::desc("Target specific attributes (-mattr=help for details)"), + cl::value_desc("a1,+a2,-a3,...")); /// create - Create an return a new JIT compiler if there is one available /// for the current target. Otherwise, return null. ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] [vector_llvm] CVS: llvm/examples/SIMD/InterQuant/Makefile interquant.altivec.handwritten.c interquant.sse.handwritten.c interquant.vectorc.c main.c
Changes in directory llvm/examples/SIMD/InterQuant: Makefile added (r1.1.2.1) interquant.altivec.handwritten.c added (r1.1.2.1) interquant.sse.handwritten.c added (r1.1.2.1) interquant.vectorc.c added (r1.1.2.1) main.c added (r1.1.2.1) --- Log message: Examples to illustrate Vector LLVM's SIMD support. --- Diffs of the changes: (+201 -0) Makefile |4 + interquant.altivec.handwritten.c |1 interquant.sse.handwritten.c | 40 + interquant.vectorc.c | 44 +++ main.c | 112 +++ 5 files changed, 201 insertions Index: llvm/examples/SIMD/InterQuant/Makefile diff -c /dev/null llvm/examples/SIMD/InterQuant/Makefile:1.1.2.1 *** /dev/null Sun Oct 23 17:50:00 2005 --- llvm/examples/SIMD/InterQuant/Makefile Sun Oct 23 17:49:40 2005 *** *** 0 --- 1,4 + NAME= interquant + + include ../Makefile.common + Index: llvm/examples/SIMD/InterQuant/interquant.altivec.handwritten.c diff -c /dev/null llvm/examples/SIMD/InterQuant/interquant.altivec.handwritten.c:1.1.2.1 *** /dev/null Sun Oct 23 17:50:17 2005 --- llvm/examples/SIMD/InterQuant/interquant.altivec.handwritten.c Sun Oct 23 17:49:40 2005 *** *** 0 --- 1 + /*** * * Copyright: (c) Copyright Motorola Inc. 1998 * * Date:May 18, 1998 * * Function:INTER_Quantization * * Description: The INTER_QUANTIZATION routine will quantize * the predictive frames (P-picture). Coefficients * are quantized to the formula: * C' = sign(C) * ( abs(C) - QP/2 ) / ( 2 * QP ). * To ensure ( abs(C) - QP/2 ) is positive, saturating * unsigned subtraction is used. * * Inputs: input - Pointer to input data (short), which * must be between -2040 and 2040 (as set * up by DCT ). It is assumed that the allocated * array has been 128-bit aligned and contains * 8x8 short elements. * * Outputs: output - Pointer to output area for the transfored * data. The output values are between -127 * and 127. It is assumed that a 128-bit * aligned 8x8 array of signed char has been * pre-allocated. * * QP: QP (quantization parameter?) ranges from 1 to 31 * **/ #define INTER_CALC( input, output ) \ t1 = vec_subs( zero, input);\ u1 = (vector unsigned short ) vec_max( input, t1 ); /* ( abs(C)) */ \ t2 = (vector signed short ) vec_subs( u1, qpd2 );/*max(0,(abs(C)-QP/2)) */ \ t3 = vec_madds( t2, dtqp.v, zero ); /* ( (abs(C)-QP/2)/(2*QP) )>>15 ) */ \ t4 = vec_min(maxq,t3);/* peg value at 127 if greater*/ \ msk = vec_cmpgt( zero, input ); /* select to find sign of input */ \ t5 = vec_subs( zero, t4 );\ output = vec_sel( t4, t5, msk ); /* ensure result is same sign */ void interquant_vector ( signed short* in, signed char* out, int QP ) { vect or signed short* input = (vector signed short*) in; vector signed char* output = (vector signed char*) out; /* ensure alignment so calculated constant can be propagated into entire vector for calculations */ union{ vector signed short v; signed short s[8]; } dtqp; vector signed short zero, minus1, maxq, parta, partb; vector signed short t1, t2, t3, t4, t5; /* used in macros */ vector unsigned short qpd2, u1; vector bool short msk; /* load the calculated constant into the vector */ dtqp.s[0] = (signed short)((int)((32768+QP)/(2*QP))); dtqp.s[1] = (signed short)(QP/2); qpd2 = (vector unsigned short) vec_splat( dtqp.v, 1); dtqp.v = vec_splat( dtqp.v, 0 ); /* load the static constants used in the macros */ zero = (vector signed short) (0); maxq = (vector signed short) (127); minus1 = (vector signed short) (-1); /* for all input compute: C' = sign(C) * ( (abs(C)-(QP /2) ) / 2*QP ) */ INTER_CALC( input[0], parta ); INTER_CALC( input[1], partb ); output[0] = vec_pack( parta, partb ); INTER_CALC( input[2], parta ); INTER_CALC( input[3], partb ); output[1] = vec_pack( parta, partb ); INTER_CALC( input[4], parta ); INTER_CALC( input[5], partb ); output[2] = vec_pack( parta, partb ); INTER_CALC( input[6], parta ); INTER_CALC( input[7], partb ); output[3] = vec_pack( parta, partb ); } \ No newline at end of file Index: llvm/examples/SIMD/InterQuant/interquant.sse.handwritten.c diff -c /dev/null llvm/examples/SIMD/InterQuant/interquant.sse.handwritten.c:
[llvm-commits] [vector_llvm] CVS: llvm/examples/SIMD/DCT/Makefile dct.altivec.handwritten.c dct.sse.handwritten.c dct.vectorc.c main.c
Changes in directory llvm/examples/SIMD/DCT: Makefile added (r1.1.2.1) dct.altivec.handwritten.c added (r1.1.2.1) dct.sse.handwritten.c added (r1.1.2.1) dct.vectorc.c added (r1.1.2.1) main.c added (r1.1.2.1) --- Log message: Examples to illustrate Vector LLVM's SIMD support. --- Diffs of the changes: (+646 -0) Makefile |4 dct.altivec.handwritten.c | 198 ++ dct.sse.handwritten.c | 129 + dct.vectorc.c | 140 main.c| 175 5 files changed, 646 insertions Index: llvm/examples/SIMD/DCT/Makefile diff -c /dev/null llvm/examples/SIMD/DCT/Makefile:1.1.2.1 *** /dev/null Sun Oct 23 17:49:50 2005 --- llvm/examples/SIMD/DCT/Makefile Sun Oct 23 17:49:39 2005 *** *** 0 --- 1,4 + NAME= dct + + include ../Makefile.common + Index: llvm/examples/SIMD/DCT/dct.altivec.handwritten.c diff -c /dev/null llvm/examples/SIMD/DCT/dct.altivec.handwritten.c:1.1.2.1 *** /dev/null Sun Oct 23 17:50:17 2005 --- llvm/examples/SIMD/DCT/dct.altivec.handwritten.cSun Oct 23 17:49:39 2005 *** *** 0 --- 1,198 + static inline void Matrix_Transpose ( vector signed short *input, vector signed short *output) + { + vector signed short a0, a1, a2, a3, a4, a5, a6, a7; + vector signed short b0, b1, b2, b3, b4, b5, b6, b7; + + b0 = vec_mergeh( input[0], input[4] ); /* [ 00 40 01 41 02 42 03 43 ]*/ + b1 = vec_mergel( input[0], input[4] ); /* [ 04 44 05 45 06 46 07 47 ]*/ + b2 = vec_mergeh( input[1], input[5] ); /* [ 10 50 11 51 12 52 13 53 ]*/ + b3 = vec_mergel( input[1], input[5] ); /* [ 14 54 15 55 16 56 17 57 ]*/ + b4 = vec_mergeh( input[2], input[6] ); /* [ 20 60 21 61 22 62 23 63 ]*/ + b5 = vec_mergel( input[2], input[6] ); /* [ 24 64 25 65 26 66 27 67 ]*/ + b6 = vec_mergeh( input[3], input[7] ); /* [ 30 70 31 71 32 72 33 73 ]*/ + b7 = vec_mergel( input[3], input[7] ); /* [ 34 74 35 75 36 76 37 77 ]*/ + + a0 = vec_mergeh( b0, b4 ); /* [ 00 20 40 60 01 21 41 61 ]*/ + a1 = vec_mergel( b0, b4 ); /* [ 02 22 42 62 03 23 43 63 ]*/ + a2 = vec_mergeh( b1, b5 ); /* [ 04 24 44 64 05 25 45 65 ]*/ + a3 = vec_mergel( b1, b5 ); /* [ 06 26 46 66 07 27 47 67 ]*/ + a4 = vec_mergeh( b2, b6 ); /* [ 10 30 50 70 11 31 51 71 ]*/ + a5 = vec_mergel( b2, b6 ); /* [ 12 32 52 72 13 33 53 73 ]*/ + a6 = vec_mergeh( b3, b7 ); /* [ 14 34 54 74 15 35 55 75 ]*/ + a7 = vec_mergel( b3, b7 ); /* [ 16 36 56 76 17 37 57 77 ]*/ + + output[0] = vec_mergeh( a0, a4 ); /* [ 00 10 20 30 40 50 60 70 ]*/ + output[1] = vec_mergel( a0, a4 ); /* [ 01 11 21 31 41 51 61 71 ]*/ + output[2] = vec_mergeh( a1, a5 ); /* [ 02 12 22 32 42 52 62 72 ]*/ + output[3] = vec_mergel( a1, a5 ); /* [ 03 13 23 33 43 53 63 73 ]*/ + output[4] = vec_mergeh( a2, a6 ); /* [ 04 14 24 34 44 54 64 74 ]*/ + output[5] = vec_mergel( a2, a6 ); /* [ 05 15 25 35 45 55 65 75 ]*/ + output[6] = vec_mergeh( a3, a7 ); /* [ 06 16 26 36 46 56 66 76 ]*/ + output[7] = vec_mergel( a3, a7 ); /* [ 07 17 27 37 47 57 67 77 ]*/ + + } + + /*** + * + * Copyright: (c) Copyright Motorola Inc. 1998 + * + * Date:April 15, 1998 + * + * Macro: DCT_Transform + * + * Description: Discrete Cosign Transform implemented by the + * Scaled Chen (II) Algorithm developed by Haifa + * Research Lab. The major differnce between this + * algorithm and the Scaled Chen (I) is that + * certain multiply-subtracts are replaced by + * multiply adds. A full description of the + * Scaled Chen (I) algorithm can be found in: + * W.C.Chen, C.H.Smith and S.C.Fralick, "A Fast + * Computational Algorithm for the Discrete Cosine + * Transform", IEEE Transactions on Cummnuications, + * Vol. COM-25, No. 9, pp 1004-1009, Sept. 1997. + * + * Inputs: vx : array of vector short + * t1-t10 : temporary vector variables set up by caller + * c4 : cos(4*pi/16) + * mc4: -c4 + * a0 : c6/c2 + * a1 : c7/c1 + * a2 : c5/c3 + * ma2: -a2 + * zero : an array of zero elements + * + * Outputs: vy : array of vector short + * + **/ + + #define DCT_Transform(vx,vy) \ +\ + /* 1st stage. */ \ +
[llvm-commits] [vector_llvm] CVS: llvm/examples/SIMD/Transpose/Makefile main.c transpose.altivec.handwritten.c transpose.sse.handwritten.c transpose.vectorc.c
Changes in directory llvm/examples/SIMD/Transpose: Makefile added (r1.1.2.1) main.c added (r1.1.2.1) transpose.altivec.handwritten.c added (r1.1.2.1) transpose.sse.handwritten.c added (r1.1.2.1) transpose.vectorc.c added (r1.1.2.1) --- Log message: Examples to illustrate Vector LLVM's SIMD support. --- Diffs of the changes: (+226 -0) Makefile|4 + main.c | 98 transpose.altivec.handwritten.c | 44 + transpose.sse.handwritten.c | 38 +++ transpose.vectorc.c | 42 + 5 files changed, 226 insertions Index: llvm/examples/SIMD/Transpose/Makefile diff -c /dev/null llvm/examples/SIMD/Transpose/Makefile:1.1.2.1 *** /dev/null Sun Oct 23 17:50:00 2005 --- llvm/examples/SIMD/Transpose/Makefile Sun Oct 23 17:49:42 2005 *** *** 0 --- 1,4 + NAME= transpose + + include ../Makefile.common + Index: llvm/examples/SIMD/Transpose/main.c diff -c /dev/null llvm/examples/SIMD/Transpose/main.c:1.1.2.1 *** /dev/null Sun Oct 23 17:50:24 2005 --- llvm/examples/SIMD/Transpose/main.c Sun Oct 23 17:49:42 2005 *** *** 0 --- 1,98 + #define N 1024 + + #include + #include + #include + #include + #include + #include "../_malloc.h" + + inline void transpose_scalar(short*, short*); + void transpose_vector(short*, short*); + + short *in; + short *out_vector; + short *out_scalar; + + void init() { + int i; + + // Force 16-byte alignment + // + in = (short*) _malloc(N*sizeof(short)); + out_vector = (short*) _malloc(N*sizeof(short)); + out_scalar = (short*) _malloc(N*sizeof(short)); + + // Populate in with a range of values + // + for (i = 0; i < N; ++i) { + in[i] = N/2-i; + } + + } + + float run() { + long t0, t1, t2; + int i,j; + struct tms buf_s, buf_e; + long scalar_time = 0, vector_time = 0; + + times(&buf_s); + for (i = 0; i < 100; ++i) + for (j = 0; j < N/64; ++j) + transpose_scalar(in+64*j, out_scalar+64*j); + times(&buf_e); + scalar_time = buf_e.tms_utime - buf_s.tms_utime; + printf("scalar time=%d, ", scalar_time); + + times(&buf_s); + for (i = 0; i < 100; ++i) + for (j = 0; j < N/64; ++j) + transpose_vector(in+64*j, out_vector+64*j); + times(&buf_e); + vector_time = buf_e.tms_utime - buf_s.tms_utime; + printf("vector time=%d, ", vector_time); + + float speedup = ((float) scalar_time)/vector_time; + printf("speedup=%f\n", speedup); + + for (i = 0; i < N; i++) { + if (out_vector[i] != out_scalar[i]) { + printf("FAILED\n"); + exit(1); + } + } + + return speedup; + } + + int + main (void) + { + unsigned i; + init(); + float best = 0; + for (i = 0; i < NRUNS; ++i) { + float speedup = run(); + if (speedup > best) + best = speedup; + } + printf("best speedup=%f\n", best); + + printf ("PASSED\n"); + return 0; + } + + void transpose_scalar ( short *input_scalar, short *output_scalar) { + unsigned i; + for (i = 0; i < 8; ++i) { + output_scalar[i] = input_scalar[8*i]; + output_scalar[8+i] = input_scalar[8*i+1]; + output_scalar[16+i] = input_scalar[8*i+2]; + output_scalar[24+i] = input_scalar[8*i+3]; + output_scalar[32+i] = input_scalar[8*i+4]; + output_scalar[40+i] = input_scalar[8*i+5]; + output_scalar[48+i] = input_scalar[8*i+6]; + output_scalar[56+i] = input_scalar[8*i+7]; + } + } Index: llvm/examples/SIMD/Transpose/transpose.altivec.handwritten.c diff -c /dev/null llvm/examples/SIMD/Transpose/transpose.altivec.handwritten.c:1.1.2.1 *** /dev/null Sun Oct 23 17:50:24 2005 --- llvm/examples/SIMD/Transpose/transpose.altivec.handwritten.cSun Oct 23 17:49:42 2005 *** *** 0 --- 1,44 + void print_vector(vector short v) { + unsigned i; + short *p = ((short*) &v); + for (i = 0; i < 8; ++i) + printf("%04X ", p[i]); + printf("\n"); + } + + inline void transpose_vector ( short *input_scalar, short *output_scalar) + { + vector signed short *input = (vector signed short*) input_scalar; + vector signed short *output = (vector signed short*) output_scalar; + + vector signed short a0, a1, a2, a3, a4, a5, a6, a7; + vector signed short b0, b1, b2, b3, b4, b5, b6, b7; + + b0 = vec_mergeh( input[0], input[4] ); /* [ 00 40 01 41 02 42 03 43 ]*/ + b1 = vec_mergel( input[0], input[4] ); /* [ 04 44 05 45 06 46 07 47 ]*/ + b2 = vec_mergeh( input[1], input[5] ); /* [ 10 50 11 51 12 52 13 53 ]*/ + b3 = vec_mergel( input[1], input[5] ); /* [ 14 54 15 55 16 56 17 57 ]*/ + b4 = vec_mergeh( input[2], input[6] ); /* [ 20 60 21 61 22 62 23 63 ]*/ + b5 = vec_mergel( input[2], input[6] ); /* [ 24 64 25 65 26 66 27 67 ]*/ + b6 = vec_mergeh( input[3], input[7] ); /* [ 30 70 31 71 32 72 33 73 ]*/ + b7 =
[llvm-commits] [vector_llvm] CVS: llvm/examples/SIMD/MADFilter/Makefile mad.h mad_filter.altivec.handwritten.c mad_filter.sse.handwritten.c mad_filter.vectorc.c main.c
Changes in directory llvm/examples/SIMD/MADFilter: Makefile added (r1.1.2.1) mad.h added (r1.1.2.1) mad_filter.altivec.handwritten.c added (r1.1.2.1) mad_filter.sse.handwritten.c added (r1.1.2.1) mad_filter.vectorc.c added (r1.1.2.1) main.c added (r1.1.2.1) --- Log message: Examples to illustrate Vector LLVM's SIMD support. --- Diffs of the changes: (+1109 -0) Makefile |4 mad.h| 932 +++ mad_filter.altivec.handwritten.c | 15 mad_filter.sse.handwritten.c | 16 mad_filter.vectorc.c | 13 main.c | 129 + 6 files changed, 1109 insertions Index: llvm/examples/SIMD/MADFilter/Makefile diff -c /dev/null llvm/examples/SIMD/MADFilter/Makefile:1.1.2.1 *** /dev/null Sun Oct 23 17:50:00 2005 --- llvm/examples/SIMD/MADFilter/Makefile Sun Oct 23 17:49:40 2005 *** *** 0 --- 1,4 + NAME= mad_filter + + include ../Makefile.common + Index: llvm/examples/SIMD/MADFilter/mad.h diff -c /dev/null llvm/examples/SIMD/MADFilter/mad.h:1.1.2.1 *** /dev/null Sun Oct 23 17:50:17 2005 --- llvm/examples/SIMD/MADFilter/mad.h Sun Oct 23 17:49:40 2005 *** *** 0 --- 1,932 + /* + * libmad - MPEG audio decoder library + * Copyright (C) 2000-2001 Robert Leslie + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * If you would like to negotiate alternate licensing terms, you may do + * so by contacting the author: Robert Leslie <[EMAIL PROTECTED]> + */ + + # ifdef __cplusplus + extern "C" { + # endif + + # define FPM_INTEL + + # define SIZEOF_INT 4 + # define SIZEOF_LONG 4 + # define SIZEOF_LONG_LONG 8 + + /* Id: version.h,v 1.20 2001/10/27 22:47:32 rob Exp */ + + # ifndef LIBMAD_VERSION_H + # define LIBMAD_VERSION_H + + # define MAD_VERSION_MAJOR0 + # define MAD_VERSION_MINOR14 + # define MAD_VERSION_PATCH2 + # define MAD_VERSION_EXTRA" (beta)" + + # define MAD_VERSION_STRINGIZE(str) #str + # define MAD_VERSION_STRING(num) MAD_VERSION_STRINGIZE(num) + + # define MAD_VERSION MAD_VERSION_STRING(MAD_VERSION_MAJOR) "." \ + MAD_VERSION_STRING(MAD_VERSION_MINOR) "." \ + MAD_VERSION_STRING(MAD_VERSION_PATCH) \ + MAD_VERSION_EXTRA + + # define MAD_PUBLISHYEAR "2000-2001" + # define MAD_AUTHOR "Robert Leslie" + # define MAD_EMAIL"[EMAIL PROTECTED]" + + extern char const mad_version[]; + extern char const mad_copyright[]; + extern char const mad_author[]; + extern char const mad_build[]; + + # endif + + /* Id: fixed.h,v 1.30 2001/11/02 09:51:06 rob Exp */ + + # ifndef LIBMAD_FIXED_H + # define LIBMAD_FIXED_H + + # if SIZEOF_INT >= 4 + typedef signed int mad_fixed_t; + + typedef signed int mad_fixed64hi_t; + typedef unsigned int mad_fixed64lo_t; + # else + typedef signed long mad_fixed_t; + + typedef signed long mad_fixed64hi_t; + typedef unsigned long mad_fixed64lo_t; + # endif + + # if defined(_MSC_VER) + # define mad_fixed64_t signed __int64 + # elif 1 || defined(__GNUC__) + # define mad_fixed64_t signed long long + # endif + + # if defined(FPM_FLOAT) + typedef double mad_sample_t; + # else + typedef mad_fixed_t mad_sample_t; + # endif + + /* + * Fixed-point format: 0xABBB + * A == whole part (sign + 3 bits) + * B == fractional part (28 bits) + * + * Values are signed two's complement, so the effective range is: + * 0x8000 to 0x7fff + * -8.0 to +7.62747097015380859375 + * + * The smallest representable value is: + * 0x0001 == 0.37252902984619140625 (i.e. about 3.725e-9) + * + * 28 bits of fractional accuracy represent about + * 8.6 digits of decimal accuracy. + * + * Fixed-point numbers can be added or subtracted as normal + * integers, but multiplication requires shifting the 64-bit result + * from 56 fractional bits back to 28 (and rounding.) + * + * Changing the definition of MAD_F_FRACBITS is only partially + * supported, and must be done with care. + */ + + # define MAD_F_FRACBITS 28 + + # if MAD_F_FRACBITS == 28 + # define MAD_F(x)((mad_fixed_t) (x##L)) + # else + # if
[llvm-commits] [vector_llvm] CVS: llvm/examples/SIMD/RGB2YUV/Makefile main.c rgb2yuv.altivec.handwritten.c rgb2yuv.sse.handwritten.c rgb2yuv.vectorc.c
Changes in directory llvm/examples/SIMD/RGB2YUV: Makefile added (r1.1.2.1) main.c added (r1.1.2.1) rgb2yuv.altivec.handwritten.c added (r1.1.2.1) rgb2yuv.sse.handwritten.c added (r1.1.2.1) rgb2yuv.vectorc.c added (r1.1.2.1) --- Log message: Examples to illustrate Vector LLVM's SIMD support. --- Diffs of the changes: (+384 -0) Makefile |4 main.c| 148 +++ rgb2yuv.altivec.handwritten.c |1 rgb2yuv.sse.handwritten.c | 230 ++ rgb2yuv.vectorc.c |1 5 files changed, 384 insertions Index: llvm/examples/SIMD/RGB2YUV/Makefile diff -c /dev/null llvm/examples/SIMD/RGB2YUV/Makefile:1.1.2.1 *** /dev/null Sun Oct 23 17:50:00 2005 --- llvm/examples/SIMD/RGB2YUV/Makefile Sun Oct 23 17:49:41 2005 *** *** 0 --- 1,4 + NAME= rgb2yuv + + include ../Makefile.common + Index: llvm/examples/SIMD/RGB2YUV/main.c diff -c /dev/null llvm/examples/SIMD/RGB2YUV/main.c:1.1.2.1 *** /dev/null Sun Oct 23 17:50:17 2005 --- llvm/examples/SIMD/RGB2YUV/main.c Sun Oct 23 17:49:41 2005 *** *** 0 --- 1,148 + #define N 4800 + + #include + #include + #include + #include + #include + #include "../_malloc.h" + + void rgb2yuv_scalar(unsigned char*, int, unsigned char*); + void rgb2yuv_vector(unsigned char*, int, unsigned char*); + + char *in; + char *out; + char *ref; + + void init() { + int i; + + // Force 16-byte alignment + // + in = (char*) _malloc(N*sizeof(char)); + out = (char*) _malloc(N*sizeof(char)); + ref = (char*) _malloc(N*sizeof(char)); + + // Populate in with a range of values + // + for (i = 0; i < N; ++i) { + in[i] = -(N/2)+i; + out[i] = 1; + ref[i] = 2; + } + + } + + void run(long *scalar_time, long *vector_time) { + long t0, t1, t2; + int i,j; + + struct tms buf_s, buf_e; + + times(&buf_s); + for (i = 0; i < 10; ++i) + rgb2yuv_scalar(in, N, ref); + times(&buf_e); + *scalar_time = buf_e.tms_utime - buf_s.tms_utime; + printf("scalar time=%d, ", *scalar_time); + + times(&buf_s); + for (i = 0; i < 10; ++i) + rgb2yuv_vector(in, N, out); + times(&buf_e); + *vector_time = buf_e.tms_utime - buf_s.tms_utime; + printf("vector time=%d, ", *vector_time); + + for (i = 0; i < N; i++) { + if (out[i] != ref[i]) { + printf("FAILED\n"); + exit(1); + } + } + + float speedup = ((float) *scalar_time) / *vector_time; + printf("speedup=%f\n", speedup); + + } + + int + main (void) { + unsigned i; + init(); + + long best_scalar = -1, best_vector = -1; + long scalar, vector; + for (i = 0; i < NRUNS; ++i) { + run (&scalar, &vector); + if (best_scalar < 0 || best_scalar > scalar) + best_scalar = scalar; + if (best_vector < 0 || best_vector > vector) + best_vector = vector; + } + + printf("best scalar=%d, ", best_scalar); + printf("best vector=%d, ", best_vector); + printf("speedup=%f\n", ((float) best_scalar)/best_vector); + printf ("PASSED\n"); + return 0; + } + + inline short saturate(int a) { + if (a > 32767) + return 32767; + if (a < -32768) + return -32768; + return a; + } + + inline short mradds(short a, short b, short c) { + int aint = a, bint = b, cint = c; + assert(((aint*bint)+(1<<14))>>15 == (((short)((aint*bint)>>14))+1)>>1); + return saturate(((aint*bint+(1 << 14)) >> 15) + cint); + } + + inline short adds(short a, short b) { + return saturate(a+b); + } + + inline unsigned char saturate_uchar(unsigned short a) { + if (a > 255) + return 255; + return a; + } + + void rgb2yuv_scalar(unsigned char *RGB_char_ptr, int RGB_size, + unsigned char *YCC_char_ptr) { + short red, green, blue; + short Y, Cb, Cr; + unsigned j, i; + + for (i = 0; i < RGB_size; i += 3*16) { + for (j = 0; j < 16; ++j) { + red = RGB_char_ptr[i+3*j]; + green = RGB_char_ptr[i+3*j+1]; + blue = RGB_char_ptr[i+3*j+2]; + + Y = mradds(red, 8432, 0); + Cb = mradds(red, -4818, 0); + Cr = mradds(red, 14345, 0); + + Y = mradds(green, 16425, Y); + Cb = mradds(green, -9527, Cb); + Cr = mradds(green, -12045, Cr); + + Y = mradds(blue, 3176, Y); + Cb = mradds(blue, 14345, Cb); + Cr = mradds(blue, -2300, Cr); + + Y = adds(Y, 16); + Cb = adds(Cb, 128); + Cr = adds(Cr, 128); + + YCC_char_ptr[i+j] = saturate_uchar(Y); + YCC_char_ptr[i+j+16] = saturate_uchar(Cb); + YCC_char_ptr[i+j+32] = saturate_uchar(Cr); + } + } + } + Index: llvm/examples/SIMD/RGB2YUV/rgb2yuv.altivec.handwritten.c diff -c /dev/null llvm/examples/SIMD/RGB2YUV/rgb2yuv.altivec.handwritten.c:1.1.2.1 *** /dev/null Sun Oct 23 17:50:18 2005 --- llvm/examples/SIMD/RGB2YUV/rgb2yuv.altivec.handwritten.cSun Oct 23 17:49:41 2005 **
[llvm-commits] [vector_llvm] CVS: llvm/examples/SIMD/Saxpy/Makefile main.c saxpy.altivec.handwritten.c saxpy.h saxpy.sse.handwritten.c saxpy.vectorc.c
Changes in directory llvm/examples/SIMD/Saxpy: Makefile added (r1.1.2.1) main.c added (r1.1.2.1) saxpy.altivec.handwritten.c added (r1.1.2.1) saxpy.h added (r1.1.2.1) saxpy.sse.handwritten.c added (r1.1.2.1) saxpy.vectorc.c added (r1.1.2.1) --- Log message: Examples to illustrate Vector LLVM's SIMD support. --- Diffs of the changes: (+132 -0) Makefile|4 ++ main.c | 81 saxpy.altivec.handwritten.c | 12 ++ saxpy.h |5 ++ saxpy.sse.handwritten.c | 16 saxpy.vectorc.c | 14 +++ 6 files changed, 132 insertions Index: llvm/examples/SIMD/Saxpy/Makefile diff -c /dev/null llvm/examples/SIMD/Saxpy/Makefile:1.1.2.1 *** /dev/null Sun Oct 23 17:50:00 2005 --- llvm/examples/SIMD/Saxpy/Makefile Sun Oct 23 17:49:41 2005 *** *** 0 --- 1,4 + NAME= saxpy + + include ../Makefile.common + Index: llvm/examples/SIMD/Saxpy/main.c diff -c /dev/null llvm/examples/SIMD/Saxpy/main.c:1.1.2.1 *** /dev/null Sun Oct 23 17:50:24 2005 --- llvm/examples/SIMD/Saxpy/main.c Sun Oct 23 17:49:41 2005 *** *** 0 --- 1,81 + #include + #include + #include + #include + #include + #include "../_malloc.h" + #include + + #include "saxpy.h" + + short *in1, *in2, *vector, *scalar; + + void init() { + unsigned i; + in1 = _malloc(N*sizeof(short)); + for (i = 0; i < N; ++i) + in1[i] = N/2 - i; + in2 = _malloc(N*sizeof(short)); + for (i = 0; i < N; ++i) + in2[i] = i - N/2; + vector = _malloc(N*sizeof(short)); + scalar = _malloc(N*sizeof(short)); + } + + void run(long *scalar_time, long *vector_time) { + unsigned i; + struct tms buf_s, buf_e; + + times(&buf_s); + for (i = 0; i < 100; ++i) + saxpy_scalar(scalar, in1, in2, A, N); + times(&buf_e); + *scalar_time = buf_e.tms_utime - buf_s.tms_utime; + printf("scalar time=%d, ", *scalar_time); + + times(&buf_s); + for (i = 0; i < 100; ++i) + saxpy_vector (vector, in1, in2, A, N); + times(&buf_e); + *vector_time = buf_e.tms_utime - buf_s.tms_utime; + printf("vector time=%d, ", *vector_time); + + for (i = 0; i < N; i++) { + if (vector[i] != scalar[i]) { + printf ("FAILED\n"); + exit(1); + } + } + + float speedup = ((float) *scalar_time) / *vector_time; + printf("speedup=%f\n", speedup); + + } + + int + main (void) { + unsigned i; + init(); + + long best_scalar = -1, best_vector = -1; + long scalar, vector; + for (i = 0; i < NRUNS; ++i) { + run (&scalar, &vector); + if (best_scalar < 0 || best_scalar > scalar) + best_scalar = scalar; + if (best_vector < 0 || best_vector > vector) + best_vector = vector; + } + + printf("best scalar=%d, ", best_scalar); + printf("best vector=%d, ", best_vector); + printf("speedup=%f\n", ((float) best_scalar)/best_vector); + printf ("PASSED\n"); + return 0; + } + + void saxpy_scalar (short *z, const short *x, const short *y, short a, unsigned n) { + int i; + for (i = 0; i < n; ++i) + *z++ = a * *x++ + *y++; + } Index: llvm/examples/SIMD/Saxpy/saxpy.altivec.handwritten.c diff -c /dev/null llvm/examples/SIMD/Saxpy/saxpy.altivec.handwritten.c:1.1.2.1 *** /dev/null Sun Oct 23 17:50:24 2005 --- llvm/examples/SIMD/Saxpy/saxpy.altivec.handwritten.cSun Oct 23 17:49:41 2005 *** *** 0 --- 1,12 + void saxpy_vector (vector short *z, const vector short *x, const vector short *y, + short a, unsigned n) { + unsigned i; + vector short a_vec; + *((short*) &a_vec) = a; + a_vec = vec_splat(a_vec, 0); + + for (i = 0; i < n/8; ++i) + *z++ = vec_mladd(a_vec, *x++, *y++); + + } + Index: llvm/examples/SIMD/Saxpy/saxpy.h diff -c /dev/null llvm/examples/SIMD/Saxpy/saxpy.h:1.1.2.1 *** /dev/null Sun Oct 23 17:50:24 2005 --- llvm/examples/SIMD/Saxpy/saxpy.hSun Oct 23 17:49:41 2005 *** *** 0 --- 1,5 + #define N 1024 + #define A 10 + + void saxpy_vector(short *z, const short *x, const short *y, short a, unsigned n); + void saxpy_scalar(short *z, const short *x, const short *y, short a, unsigned n); Index: llvm/examples/SIMD/Saxpy/saxpy.sse.handwritten.c diff -c /dev/null llvm/examples/SIMD/Saxpy/saxpy.sse.handwritten.c:1.1.2.1 *** /dev/null Sun Oct 23 17:50:24 2005 --- llvm/examples/SIMD/Saxpy/saxpy.sse.handwritten.cSun Oct 23 17:49:42 2005 *** *** 0 --- 1,16 + #include "SSE.h" + + void saxpy_vector(short *z, short *x, short *y, short a, unsigned n) { + __m128i* x_ptr = (__m128i*) x; + __m128i* y_ptr = (__m128i*) y; + __m128i* z_ptr = (__m128i*) z; + __m128i a_vec = _mm_splat_epi16(a); + int i; + for (i = 0; i < n/8; ++i) { + __m128i x_vec = x_ptr[i]; + __m128i y_vec = y_ptr[i]; + __m128i z_vec = _mm_add_epi16( _mm_mullo_epi16(x_vec,a_vec),y_vec); + z_ptr[i] = z_ve
[llvm-commits] CVS: llvm-www/pubs/2005-03-14-ACP4IS-AspectsKernel.html 2005-03-14-ACP4IS-AspectsKernel.pdf index.html
Changes in directory llvm-www/pubs: 2005-03-14-ACP4IS-AspectsKernel.html added (r1.1) 2005-03-14-ACP4IS-AspectsKernel.pdf added (r1.1) index.html updated: 1.29 -> 1.30 --- Log message: Add another paper --- Diffs of the changes: (+57 -0) 2005-03-14-ACP4IS-AspectsKernel.html | 50 +++ 2005-03-14-ACP4IS-AspectsKernel.pdf |0 index.html |7 3 files changed, 57 insertions(+) Index: llvm-www/pubs/2005-03-14-ACP4IS-AspectsKernel.html diff -c /dev/null llvm-www/pubs/2005-03-14-ACP4IS-AspectsKernel.html:1.1 *** /dev/null Sun Oct 23 18:54:06 2005 --- llvm-www/pubs/2005-03-14-ACP4IS-AspectsKernel.html Sun Oct 23 18:53:56 2005 *** *** 0 --- 1,50 + + + + + + Using a Low-Level Virtual Machine to Improve Dynamic Aspect Support in Operating System Kernels + + + + + Using a Low-Level Virtual Machine to Improve Dynamic Aspect Support in + Operating System Kernels + + Michael Engel and Bernd Freisleben + + + + Abstract: + + + Current implementations of software providing dynamic aspect functionality in operating system (OS) kernels are quite + restricted in the possible joinpoint types for native code they + are able to support. Most of the pro jects implementing advice for native code use basic technologies adopted from instrumentation methods which allow to provide before, after + and around joinpoints for functions. More elaborate join-points, however, are not available since support for monitoring native code execution in current CPUs is very restricted + without extensive extensions of the compiler toolchain. To + realize improved ways of aspect activation in OS kernels, we + present an architecture that provides an efficient low-level + virtual machine running on top of a microkernel system in + cooperation with an aspect deployment service to provide + novel ways of aspect activation in kernel environments. + + + + Published: + + "Using a Low-Level Virtual Machine to Improve Dynamic Aspect Support in +Operating System Kernels" + By Michael Engel and Bernd Freisleben. + Proceedings of the 4th AOSD Workshop on Aspects, Components, and Patterns + for Infrastructure Software (ACP4IS), March 14-18, Chicago, 2005 + + + Download: + + Using a Low-Level Virtual Machine +to Improve Dynamic Aspect Support in Operating System Kernels (PDF) + + + + Index: llvm-www/pubs/2005-03-14-ACP4IS-AspectsKernel.pdf Index: llvm-www/pubs/index.html diff -u llvm-www/pubs/index.html:1.29 llvm-www/pubs/index.html:1.30 --- llvm-www/pubs/index.html:1.29 Sun Oct 23 13:03:03 2005 +++ llvm-www/pubs/index.htmlSun Oct 23 18:53:56 2005 @@ -70,6 +70,13 @@ ACM Workshop on Memory System Performance (MSP'05), Chicago, Illinois, June, 2005. +Using a Low-Level Virtual + Machine to Improve Dynamic Aspect Support in Operating System Kernels + By Michael Engel and Bernd Freisleben. +Proceedings of the 4th AOSD Workshop on Aspects, Components, and Patterns for + Infrastructure Software (ACP4IS), March 14-18, Chicago, 2005 + + "Memory Safety Without Garbage Collection for Embedded Applications" Dinakar Dhurjati, Sumant Kowshik, Vikram Adve and Chris Lattner ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/ExecutionEngine/ExecutionEngine.cpp
Changes in directory llvm/lib/ExecutionEngine: ExecutionEngine.cpp updated: 1.71 -> 1.72 --- Log message: Fix a nasty bug that was causing miscompilation of global variables on big endian 32-bit targets in some cases (e.g. PPC). This fixes several PPC JIT failures. --- Diffs of the changes: (+4 -1) ExecutionEngine.cpp |5 - 1 files changed, 4 insertions(+), 1 deletion(-) Index: llvm/lib/ExecutionEngine/ExecutionEngine.cpp diff -u llvm/lib/ExecutionEngine/ExecutionEngine.cpp:1.71 llvm/lib/ExecutionEngine/ExecutionEngine.cpp:1.72 --- llvm/lib/ExecutionEngine/ExecutionEngine.cpp:1.71 Tue Jul 12 10:51:55 2005 +++ llvm/lib/ExecutionEngine/ExecutionEngine.cppSun Oct 23 18:54:56 2005 @@ -189,7 +189,10 @@ uint64_t Offset = TD->getIndexedOffset(CE->getOperand(0)->getType(), Indexes); - Result.LongVal += Offset; + if (getTargetData().getPointerSize() == 4) +Result.IntVal += Offset; + else +Result.LongVal += Offset; return Result; } case Instruction::Cast: { ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm-www/pubs/index.html
Changes in directory llvm-www/pubs: index.html updated: 1.30 -> 1.31 --- Log message: add a missing --- Diffs of the changes: (+8 -8) index.html | 16 1 files changed, 8 insertions(+), 8 deletions(-) Index: llvm-www/pubs/index.html diff -u llvm-www/pubs/index.html:1.30 llvm-www/pubs/index.html:1.31 --- llvm-www/pubs/index.html:1.30 Sun Oct 23 18:53:56 2005 +++ llvm-www/pubs/index.htmlSun Oct 23 18:59:11 2005 @@ -15,7 +15,7 @@ "LLVA: A Low-level Virtual Instruction Set Architecture" Vikram Adve, Chris Lattner, Michael Brukman, Anand Shukla, -and Brian Gaeke Proceedings of the +and Brian Gaeke Proc. of the 36th annual ACM/IEEE international symposium on Microarchitecture (MICRO-36), San Diego, CA, December 2003. @@ -38,14 +38,14 @@ Allocation: A Study of the Chaitin-Briggs and Callahan-Koblenz Algorithms" By Keith Cooper, Anshuman Dasgupta, and Jason Eckhardt. - Proceedings of the Workshop on Languages and Compilers for Parallel + Proc. of the Workshop on Languages and Compilers for Parallel Computing (LCPC'05), Hawthorne, NY, October 20-22, 2005 "Segment Protection for Embedded Systems Using Run-time Checks" By Matthew Simpson, Bhuvan Middha and Rajeev Barua Proc. of the ACM International Conference on Compilers, - Architecture, and Synthesis for Embedded Systems (CASES), + Architecture, and Synthesis for Embedded Systems (CASES'05), San Francisco, CA, September, 2005 "An Implementation of Swing Modulo Scheduling with Extensions for Superblocks" @@ -66,15 +66,15 @@ "Transparent Pointer Compression for Linked Data Structures" -Chris Lattner and Vikram Adve Proceedings of the +Chris Lattner and Vikram Adve Proc. of the ACM Workshop on Memory System Performance (MSP'05), Chicago, Illinois, June, 2005. Using a Low-Level Virtual Machine to Improve Dynamic Aspect Support in Operating System Kernels - By Michael Engel and Bernd Freisleben. -Proceedings of the 4th AOSD Workshop on Aspects, Components, and Patterns for - Infrastructure Software (ACP4IS), March 14-18, Chicago, 2005 + By Michael Engel and Bernd Freisleben. +Proc. of the 4th AOSD Workshop on Aspects, Components, and Patterns for + Infrastructure Software (ACP4IS'05), March 14-18, Chicago, 2005 "Memory Safety Without @@ -109,7 +109,7 @@ "Memory Safety Without Runtime Checks or Garbage Collection" Dinakar Dhurjati, Sumant Kowshik, Vikram -Adve and Chris Lattner Proceedings of +Adve and Chris Lattner Proc. of Languages Compilers and Tools for Embedded Systems 2003 (LCTES 03), San Diego, CA, June 2003. ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/include/llvm/Transforms/LinkAllPasses.h
Changes in directory llvm/include/llvm/Transforms: LinkAllPasses.h updated: 1.20 -> 1.21 --- Log message: There is no need for this to be VC++ only --- Diffs of the changes: (+6 -15) LinkAllPasses.h | 21 ++--- 1 files changed, 6 insertions(+), 15 deletions(-) Index: llvm/include/llvm/Transforms/LinkAllPasses.h diff -u llvm/include/llvm/Transforms/LinkAllPasses.h:1.20 llvm/include/llvm/Transforms/LinkAllPasses.h:1.21 --- llvm/include/llvm/Transforms/LinkAllPasses.h:1.20 Tue Oct 18 20:41:47 2005 +++ llvm/include/llvm/Transforms/LinkAllPasses.hSun Oct 23 19:08:51 2005 @@ -7,17 +7,14 @@ // //===--===// // -// This header file is required for building with Microsoft's VC++, as it has -// no way of linking all registered passes into executables other than by -// explicit use. +// This header file pulls in all transformation passes for tools like opts and +// bugpoint that need this functionality. // //===--===// #ifndef LLVM_TRANSFORMS_LINKALLPASSES_H #define LLVM_TRANSFORMS_LINKALLPASSES_H -#ifdef _MSC_VER - #include "llvm/Analysis/Passes.h" #include "llvm/Analysis/LoadValueNumbering.h" #include "llvm/CodeGen/Passes.h" @@ -25,20 +22,16 @@ #include "llvm/Transforms/IPO.h" #include "llvm/Transforms/Scalar.h" #include "llvm/Transforms/Utils/UnifyFunctionExitNodes.h" - -// Trying not to include , though maybe we should... Problem is, -// it pollutes the global namespace in some really nasty ways. -extern "C" __declspec(dllimport) void* __stdcall GetCurrentProcess(); +#include namespace { struct ForcePassLinking { ForcePassLinking() { - // We must reference the passes in such a way that VC++ will not + // We must reference the passes in such a way that compilers will not // delete it all as dead code, even with whole program optimization, // yet is effectively a NO-OP. As the compiler isn't smart enough - // to know that GetCurrentProcess() never returns - // INVALID_HANDLE_VALUE, this will do the job. - if (GetCurrentProcess() != (void *) -1) + // to know that getenv() never returns -1, this will do the job. + if (std::getenv("bar") != (char*) -1) return; (void) llvm::createAAEvalPass(); @@ -120,6 +113,4 @@ } _ForcePassLinking; }; -#endif // _MSC_VER - #endif ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/tools/opt/Makefile
Changes in directory llvm/tools/opt: Makefile updated: 1.49 -> 1.50 --- Log message: Use archive versions of these libraries, using the LinkAllPasses header. --- Diffs of the changes: (+3 -3) Makefile |6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) Index: llvm/tools/opt/Makefile diff -u llvm/tools/opt/Makefile:1.49 llvm/tools/opt/Makefile:1.50 --- llvm/tools/opt/Makefile:1.49Fri Apr 22 12:14:14 2005 +++ llvm/tools/opt/Makefile Sun Oct 23 19:12:20 2005 @@ -9,9 +9,9 @@ LEVEL = ../.. TOOLNAME = opt -USEDLIBS = LLVMBCReader LLVMBCWriter LLVMInstrumentation LLVMProfilePaths \ - LLVMScalarOpts LLVMipo LLVMipa LLVMDataStructure LLVMTransforms \ - LLVMTarget.a LLVMAnalysis LLVMTransformUtils LLVMCore LLVMSupport.a \ +USEDLIBS = LLVMBCReader LLVMBCWriter LLVMInstrumentation.a LLVMProfilePaths \ + LLVMScalarOpts.a LLVMipo.a LLVMipa.a LLVMDataStructure LLVMTransforms.a \ + LLVMTarget.a LLVMAnalysis.a LLVMTransformUtils.a LLVMCore LLVMSupport.a \ LLVMbzip2 LLVMSystem.a include $(LEVEL)/Makefile.common ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/include/llvm/Transforms/LinkAllPasses.h
Changes in directory llvm/include/llvm/Transforms: LinkAllPasses.h updated: 1.21 -> 1.22 --- Log message: Don't invade the system namespace --- Diffs of the changes: (+1 -1) LinkAllPasses.h |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index: llvm/include/llvm/Transforms/LinkAllPasses.h diff -u llvm/include/llvm/Transforms/LinkAllPasses.h:1.21 llvm/include/llvm/Transforms/LinkAllPasses.h:1.22 --- llvm/include/llvm/Transforms/LinkAllPasses.h:1.21 Sun Oct 23 19:08:51 2005 +++ llvm/include/llvm/Transforms/LinkAllPasses.hSun Oct 23 19:16:03 2005 @@ -110,7 +110,7 @@ (void) llvm::createUnifyFunctionExitNodesPass(); (void) llvm::createCondPropagationPass(); } - } _ForcePassLinking; + } ForcePassLinking; }; #endif ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Analysis/IPA/PrintSCC.cpp
Changes in directory llvm/lib/Analysis/IPA: PrintSCC.cpp (r1.14) removed --- Log message: move this to the analyze tool --- Diffs of the changes: (+0 -0) 0 files changed ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/include/llvm/Analysis/DataStructure/DataStructure.h
Changes in directory llvm/include/llvm/Analysis/DataStructure: DataStructure.h updated: 1.94 -> 1.95 --- Log message: add some prototypes --- Diffs of the changes: (+4 -0) DataStructure.h |4 1 files changed, 4 insertions(+) Index: llvm/include/llvm/Analysis/DataStructure/DataStructure.h diff -u llvm/include/llvm/Analysis/DataStructure/DataStructure.h:1.94 llvm/include/llvm/Analysis/DataStructure/DataStructure.h:1.95 --- llvm/include/llvm/Analysis/DataStructure/DataStructure.h:1.94 Thu Apr 21 15:18:05 2005 +++ llvm/include/llvm/Analysis/DataStructure/DataStructure.hSun Oct 23 19:38:25 2005 @@ -31,6 +31,10 @@ class DSNode; class DSNodeHandle; +FunctionPass *createDataStructureStatsPass(); +FunctionPass *createDataStructureGraphCheckerPass(); + + // FIXME: move this stuff to a private header namespace DataStructureAnalysis { /// isPointerType - Return true if this first class type is big enough to hold ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Analysis/DataStructure/DataStructureStats.cpp GraphChecker.cpp
Changes in directory llvm/lib/Analysis/DataStructure: DataStructureStats.cpp updated: 1.18 -> 1.19 GraphChecker.cpp updated: 1.18 -> 1.19 --- Log message: implement some prototypes --- Diffs of the changes: (+10 -0) DataStructureStats.cpp |5 + GraphChecker.cpp |5 + 2 files changed, 10 insertions(+) Index: llvm/lib/Analysis/DataStructure/DataStructureStats.cpp diff -u llvm/lib/Analysis/DataStructure/DataStructureStats.cpp:1.18 llvm/lib/Analysis/DataStructure/DataStructureStats.cpp:1.19 --- llvm/lib/Analysis/DataStructure/DataStructureStats.cpp:1.18 Thu Apr 21 16:07:28 2005 +++ llvm/lib/Analysis/DataStructure/DataStructureStats.cpp Sun Oct 23 19:38:38 2005 @@ -63,6 +63,11 @@ static RegisterAnalysis Z("dsstats", "DS Graph Statistics"); } +FunctionPass *llvm::createDataStructureStatsPass() { + return new DSGraphStats(); +} + + static bool isIndirectCallee(Value *V) { if (isa(V)) return false; Index: llvm/lib/Analysis/DataStructure/GraphChecker.cpp diff -u llvm/lib/Analysis/DataStructure/GraphChecker.cpp:1.18 llvm/lib/Analysis/DataStructure/GraphChecker.cpp:1.19 --- llvm/lib/Analysis/DataStructure/GraphChecker.cpp:1.18 Thu Apr 21 16:07:28 2005 +++ llvm/lib/Analysis/DataStructure/GraphChecker.cppSun Oct 23 19:38:38 2005 @@ -77,6 +77,11 @@ RegisterAnalysis X("datastructure-gc", "DSA Graph Checking Pass"); } +FunctionPass *llvm::createDataStructureGraphCheckerPass() { + return new DSGC(); +} + + DSGC::DSGC() { if (!AbortIfAnyCollapsed && AbortIfCollapsed.empty() && CheckFlags.empty() && AbortIfMerged.empty()) { ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/include/llvm/Analysis/LinkAllAnalyses.h
Changes in directory llvm/include/llvm/Analysis: LinkAllAnalyses.h added (r1.1) --- Log message: new header --- Diffs of the changes: (+64 -0) LinkAllAnalyses.h | 64 ++ 1 files changed, 64 insertions(+) Index: llvm/include/llvm/Analysis/LinkAllAnalyses.h diff -c /dev/null llvm/include/llvm/Analysis/LinkAllAnalyses.h:1.1 *** /dev/null Sun Oct 23 19:59:59 2005 --- llvm/include/llvm/Analysis/LinkAllAnalyses.hSun Oct 23 19:59:49 2005 *** *** 0 --- 1,64 + //===- LinkAllAnalyses.h - Reference All Analysis Passes *- C++ -*-===// + // + // The LLVM Compiler Infrastructure + // + // This file was developed by Chris Lattner and is distributed under the + // University of Illinois Open Source License. See LICENSE.TXT for details. + // + //===--===// + // + // This header file pulls in all analysis passes for tools like analyze and + // bugpoint that need this functionality. + // + //===--===// + + #ifndef LLVM_ANALYSIS_LINKALLANALYSES_H + #define LLVM_ANALYSIS_LINKALLANALYSES_H + + #include "llvm/Analysis/AliasSetTracker.h" + #include "llvm/Analysis/CallGraph.h" + #include "llvm/Analysis/FindUnsafePointerTypes.h" + #include "llvm/Analysis/FindUsedTypes.h" + #include "llvm/Analysis/IntervalPartition.h" + #include "llvm/Analysis/PostDominators.h" + #include "llvm/Analysis/Passes.h" + #include "llvm/Analysis/ScalarEvolution.h" + #include "llvm/Analysis/DataStructure/DataStructure.h" + #include "llvm/Function.h" + #include + + namespace { + struct ForceAnalysisPassLinking { + ForceAnalysisPassLinking() { + // We must reference the passes in such a way that compilers will not + // delete it all as dead code, even with whole program optimization, + // yet is effectively a NO-OP. As the compiler isn't smart enough + // to know that getenv() never returns -1, this will do the job. + if (std::getenv("bar") != (char*) -1) + return; + + (void)new llvm::LocalDataStructures(); + (void)new llvm::BUDataStructures(); + (void)new llvm::TDDataStructures(); + (void)new llvm::CompleteBUDataStructures(); + (void)new llvm::EquivClassGraphs(); + (void)llvm::createDataStructureStatsPass(); + (void)llvm::createDataStructureGraphCheckerPass(); + (void)llvm::createProfileLoaderPass(); + (void)llvm::createNoProfileInfoPass(); + (void)llvm::createInstCountPass(); + (void)new llvm::IntervalPartition(); + (void)new llvm::ImmediateDominators(); + (void)new llvm::PostDominatorSet(); + (void)new llvm::CallGraph(); + (void)new llvm::FindUsedTypes(); + (void)new llvm::FindUnsafePointerTypes(); + (void)new llvm::ScalarEvolution(); + ((llvm::Function*)0)->viewCFGOnly(); + llvm::AliasSetTracker X(*(llvm::AliasAnalysis*)0); + X.add((llvm::Value*)0, 0); // for -print-alias-sets + } + } ForceAnalysisPassLinking; + }; + + #endif ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/tools/analyze/Makefile analyze.cpp
Changes in directory llvm/tools/analyze: Makefile updated: 1.26 -> 1.27 analyze.cpp updated: 1.64 -> 1.65 --- Log message: Use the new LinkAllAnalyses.h header instead of forcing passes to be in relinked object files --- Diffs of the changes: (+3 -1) Makefile|3 ++- analyze.cpp |1 + 2 files changed, 3 insertions(+), 1 deletion(-) Index: llvm/tools/analyze/Makefile diff -u llvm/tools/analyze/Makefile:1.26 llvm/tools/analyze/Makefile:1.27 --- llvm/tools/analyze/Makefile:1.26Fri Apr 22 12:14:14 2005 +++ llvm/tools/analyze/Makefile Sun Oct 23 20:00:13 2005 @@ -8,7 +8,8 @@ ##===--===## LEVEL = ../.. TOOLNAME = analyze -USEDLIBS = LLVMAsmParser LLVMBCReader LLVMAnalysis LLVMipa LLVMDataStructure \ +USEDLIBS = LLVMAsmParser LLVMBCReader LLVMAnalysis.a LLVMipa.a \ + LLVMDataStructure.a \ LLVMScalarOpts.a LLVMTransforms.a LLVMTarget.a LLVMScalarOpts.a \ LLVMTransformUtils.a LLVMCore LLVMSupport.a LLVMbzip2 LLVMSystem.a Index: llvm/tools/analyze/analyze.cpp diff -u llvm/tools/analyze/analyze.cpp:1.64 llvm/tools/analyze/analyze.cpp:1.65 --- llvm/tools/analyze/analyze.cpp:1.64 Thu Apr 21 18:59:21 2005 +++ llvm/tools/analyze/analyze.cpp Sun Oct 23 20:00:13 2005 @@ -21,6 +21,7 @@ #include "llvm/Bytecode/Reader.h" #include "llvm/Assembly/Parser.h" #include "llvm/Analysis/Verifier.h" +#include "llvm/Analysis/LinkAllAnalyses.h" #include "llvm/Target/TargetData.h" #include "llvm/Support/PassNameParser.h" #include "llvm/System/Signals.h" ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/include/llvm/Analysis/Passes.h
Changes in directory llvm/include/llvm/Analysis: Passes.h updated: 1.6 -> 1.7 --- Log message: add a proto --- Diffs of the changes: (+4 -0) Passes.h |4 1 files changed, 4 insertions(+) Index: llvm/include/llvm/Analysis/Passes.h diff -u llvm/include/llvm/Analysis/Passes.h:1.6 llvm/include/llvm/Analysis/Passes.h:1.7 --- llvm/include/llvm/Analysis/Passes.h:1.6 Thu Apr 21 15:16:32 2005 +++ llvm/include/llvm/Analysis/Passes.h Sun Oct 23 20:00:32 2005 @@ -102,6 +102,10 @@ // simple context insensitive alias analysis. // ModulePass *createSteensgaardPass(); + + // Minor pass prototypes, allowing us to expose them through bugpoint and + // analyze. + FunctionPass *createInstCountPass(); } #endif ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Analysis/InstCount.cpp
Changes in directory llvm/lib/Analysis: InstCount.cpp updated: 1.12 -> 1.13 --- Log message: expose a ctor --- Diffs of the changes: (+3 -0) InstCount.cpp |3 +++ 1 files changed, 3 insertions(+) Index: llvm/lib/Analysis/InstCount.cpp diff -u llvm/lib/Analysis/InstCount.cpp:1.12 llvm/lib/Analysis/InstCount.cpp:1.13 --- llvm/lib/Analysis/InstCount.cpp:1.12Thu Apr 21 16:04:58 2005 +++ llvm/lib/Analysis/InstCount.cpp Sun Oct 23 20:00:45 2005 @@ -11,6 +11,7 @@ // //===--===// +#include "llvm/Analysis/Passes.h" #include "llvm/Pass.h" #include "llvm/Function.h" #include "llvm/Support/InstVisitor.h" @@ -57,6 +58,8 @@ "Counts the various types of Instructions"); } +FunctionPass *llvm::createInstCountPass() { return new InstCount(); } + // InstCount::run - This is the main Analysis entry point for a // function. // ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/tools/bugpoint/Makefile bugpoint.cpp
Changes in directory llvm/tools/bugpoint: Makefile updated: 1.12 -> 1.13 bugpoint.cpp updated: 1.25 -> 1.26 --- Log message: Link to archive versions of libraries instead of the relinked ones --- Diffs of the changes: (+6 -4) Makefile |8 bugpoint.cpp |2 ++ 2 files changed, 6 insertions(+), 4 deletions(-) Index: llvm/tools/bugpoint/Makefile diff -u llvm/tools/bugpoint/Makefile:1.12 llvm/tools/bugpoint/Makefile:1.13 --- llvm/tools/bugpoint/Makefile:1.12 Fri Apr 22 12:14:14 2005 +++ llvm/tools/bugpoint/MakefileSun Oct 23 20:05:53 2005 @@ -10,11 +10,11 @@ TOOLNAME = bugpoint -OPTLIBS = LLVMTransforms LLVMInstrumentation LLVMProfilePaths -ANALIBS = LLVMDataStructure LLVMipa LLVMTarget.a +OPTLIBS = LLVMTransforms.a LLVMInstrumentation.a LLVMProfilePaths +ANALIBS = LLVMDataStructure LLVMipa.a LLVMTarget.a -USEDLIBS = LLVMipo LLVMScalarOpts LLVMAnalysis $(OPTLIBS) $(ANALIBS) \ - LLVMTransformUtils \ +USEDLIBS = LLVMipo.a LLVMScalarOpts.a $(OPTLIBS) $(ANALIBS) LLVMAnalysis.a \ + LLVMTransformUtils.a \ LLVMAsmParser LLVMLinker.a LLVMBCReader LLVMBCWriter \ LLVMCore LLVMSupport.a LLVMbzip2 LLVMSystem.a Index: llvm/tools/bugpoint/bugpoint.cpp diff -u llvm/tools/bugpoint/bugpoint.cpp:1.25 llvm/tools/bugpoint/bugpoint.cpp:1.26 --- llvm/tools/bugpoint/bugpoint.cpp:1.25 Mon Aug 1 21:16:17 2005 +++ llvm/tools/bugpoint/bugpoint.cppSun Oct 23 20:05:53 2005 @@ -14,6 +14,8 @@ //===--===// #include "BugDriver.h" +#include "llvm/Analysis/LinkAllAnalyses.h" +#include "llvm/Transforms/LinkAllPasses.h" #include "llvm/Support/PassNameParser.h" #include "llvm/Support/ToolRunner.h" #include "llvm/Support/CommandLine.h" ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/tools/analyze/Makefile
Changes in directory llvm/tools/analyze: Makefile updated: 1.27 -> 1.28 --- Log message: Link in datastructure as a relinked o file --- Diffs of the changes: (+1 -1) Makefile |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index: llvm/tools/analyze/Makefile diff -u llvm/tools/analyze/Makefile:1.27 llvm/tools/analyze/Makefile:1.28 --- llvm/tools/analyze/Makefile:1.27Sun Oct 23 20:00:13 2005 +++ llvm/tools/analyze/Makefile Sun Oct 23 20:07:56 2005 @@ -9,7 +9,7 @@ LEVEL = ../.. TOOLNAME = analyze USEDLIBS = LLVMAsmParser LLVMBCReader LLVMAnalysis.a LLVMipa.a \ - LLVMDataStructure.a \ + LLVMDataStructure \ LLVMScalarOpts.a LLVMTransforms.a LLVMTarget.a LLVMScalarOpts.a \ LLVMTransformUtils.a LLVMCore LLVMSupport.a LLVMbzip2 LLVMSystem.a ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Analysis/DataStructure/Makefile
Changes in directory llvm/lib/Analysis/DataStructure: Makefile updated: 1.4 -> 1.5 --- Log message: don't bother building the archive version of this library --- Diffs of the changes: (+1 -1) Makefile |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index: llvm/lib/Analysis/DataStructure/Makefile diff -u llvm/lib/Analysis/DataStructure/Makefile:1.4 llvm/lib/Analysis/DataStructure/Makefile:1.5 --- llvm/lib/Analysis/DataStructure/Makefile:1.4Thu Oct 28 00:36:48 2004 +++ llvm/lib/Analysis/DataStructure/MakefileSun Oct 23 20:08:20 2005 @@ -6,9 +6,9 @@ # the University of Illinois Open Source License. See LICENSE.TXT for details. # ##===--===## + LEVEL = ../../.. LIBRARYNAME = LLVMDataStructure -BUILD_ARCHIVE = 1 include $(LEVEL)/Makefile.common ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/tools/gccas/Makefile
Changes in directory llvm/tools/gccas: Makefile updated: 1.21 -> 1.22 --- Log message: Pull in the archive versions of these libs to reduce executable size --- Diffs of the changes: (+2 -2) Makefile |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) Index: llvm/tools/gccas/Makefile diff -u llvm/tools/gccas/Makefile:1.21 llvm/tools/gccas/Makefile:1.22 --- llvm/tools/gccas/Makefile:1.21 Sun Apr 24 12:43:37 2005 +++ llvm/tools/gccas/Makefile Sun Oct 23 20:12:14 2005 @@ -9,8 +9,8 @@ LEVEL = ../.. TOOLNAME = gccas -USEDLIBS = LLVMAsmParser LLVMBCWriter LLVMTransforms LLVMipo.a LLVMipa.a \ - LLVMScalarOpts LLVMAnalysis.a LLVMTarget.a LLVMTransformUtils \ +USEDLIBS = LLVMAsmParser LLVMBCWriter LLVMTransforms.a LLVMipo.a LLVMipa.a \ + LLVMScalarOpts.a LLVMAnalysis.a LLVMTarget.a LLVMTransformUtils.a \ LLVMCore LLVMSupport.a LLVMbzip2 LLVMSystem.a include $(LEVEL)/Makefile.common ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/tools/llc/Makefile
Changes in directory llvm/tools/llc: Makefile updated: 1.73 -> 1.74 --- Log message: pull in the archive version of this lib to reduce exe size --- Diffs of the changes: (+1 -1) Makefile |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index: llvm/tools/llc/Makefile diff -u llvm/tools/llc/Makefile:1.73 llvm/tools/llc/Makefile:1.74 --- llvm/tools/llc/Makefile:1.73Wed Jun 8 17:32:51 2005 +++ llvm/tools/llc/Makefile Sun Oct 23 20:13:21 2005 @@ -69,7 +69,7 @@ LLVMTarget.a \ LLVMipa.a \ LLVMTransforms.a \ - LLVMScalarOpts \ + LLVMScalarOpts.a \ LLVMAnalysis.a \ LLVMTransformUtils.a \ LLVMBCReader \ ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/Makefile.rules
Changes in directory llvm: Makefile.rules updated: 1.330 -> 1.331 --- Log message: pull in the .a version of scalaropts lib to reduce the size of programs using the JIT --- Diffs of the changes: (+1 -1) Makefile.rules |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index: llvm/Makefile.rules diff -u llvm/Makefile.rules:1.330 llvm/Makefile.rules:1.331 --- llvm/Makefile.rules:1.330 Sat Oct 22 23:51:22 2005 +++ llvm/Makefile.rules Sun Oct 23 20:15:14 2005 @@ -617,7 +617,7 @@ JIT_LIBS += LLVMAlpha LLVMSelectionDAG endif -LLVMLIBS := $(JIT_LIBS) LLVMScalarOpts LLVMAnalysis.a LLVMTransformUtils.a \ +LLVMLIBS := $(JIT_LIBS) LLVMScalarOpts.a LLVMAnalysis.a LLVMTransformUtils.a \ LLVMBCReader LLVMCore LLVMSupport.a LLVMTarget.a LLVMbzip2 \ LLVMSystem.a $(PLATFORMLIBDL) endif ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Transforms/Scalar/ADCE.cpp
Changes in directory llvm/lib/Transforms/Scalar: ADCE.cpp updated: 1.93 -> 1.94 --- Log message: Make sure that anything using the ADCE pass pulls in the UnifyFunctionExitNodes code --- Diffs of the changes: (+2 -0) ADCE.cpp |2 ++ 1 files changed, 2 insertions(+) Index: llvm/lib/Transforms/Scalar/ADCE.cpp diff -u llvm/lib/Transforms/Scalar/ADCE.cpp:1.93 llvm/lib/Transforms/Scalar/ADCE.cpp:1.94 --- llvm/lib/Transforms/Scalar/ADCE.cpp:1.93Sat May 14 07:25:31 2005 +++ llvm/lib/Transforms/Scalar/ADCE.cpp Sun Oct 23 20:40:23 2005 @@ -29,6 +29,8 @@ #include using namespace llvm; +static IncludeFile X((void*)createUnifyFunctionExitNodesPass); + namespace { Statistic<> NumBlockRemoved("adce", "Number of basic blocks removed"); Statistic<> NumInstRemoved ("adce", "Number of instructions removed"); ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/projects/Stacker/tools/stkrc/Makefile
Changes in directory llvm/projects/Stacker/tools/stkrc: Makefile updated: 1.7 -> 1.8 --- Log message: use archives when possible --- Diffs of the changes: (+2 -2) Makefile |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) Index: llvm/projects/Stacker/tools/stkrc/Makefile diff -u llvm/projects/Stacker/tools/stkrc/Makefile:1.7 llvm/projects/Stacker/tools/stkrc/Makefile:1.8 --- llvm/projects/Stacker/tools/stkrc/Makefile:1.7 Wed May 18 19:54:10 2005 +++ llvm/projects/Stacker/tools/stkrc/Makefile Sun Oct 23 20:52:15 2005 @@ -9,8 +9,8 @@ # Give the name of a library. This will build a dynamic version. # TOOLNAME = stkrc -LLVMLIBS = LLVMAsmParser LLVMBCWriter LLVMTransforms LLVMipo.a LLVMipa.a \ - LLVMScalarOpts LLVMAnalysis.a LLVMTarget.a LLVMTransformUtils \ +LLVMLIBS = LLVMAsmParser LLVMBCWriter LLVMTransforms.a LLVMipo.a LLVMipa.a \ + LLVMScalarOpts.a LLVMAnalysis.a LLVMTarget.a LLVMTransformUtils.a \ LLVMCore LLVMSupport.a LLVMbzip2 LLVMSystem.a CONFIG_FILES = st EXTRA_DIST = st ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Transforms/Makefile
Changes in directory llvm/lib/Transforms: Makefile updated: 1.9 -> 1.10 --- Log message: Only build .a file versions of these libraries, instead of .a and .o versions. This should speed up build times. --- Diffs of the changes: (+1 -0) Makefile |1 + 1 files changed, 1 insertion(+) Index: llvm/lib/Transforms/Makefile diff -u llvm/lib/Transforms/Makefile:1.9 llvm/lib/Transforms/Makefile:1.10 --- llvm/lib/Transforms/Makefile:1.9Wed Oct 27 18:18:45 2004 +++ llvm/lib/Transforms/MakefileSun Oct 23 20:56:50 2005 @@ -10,6 +10,7 @@ PARALLEL_DIRS = Utils Instrumentation Scalar IPO LIBRARYNAME = LLVMTransforms BUILD_ARCHIVE = 1 +DONT_BUILD_RELINKED = 1 include $(LEVEL)/Makefile.common ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Transforms/Scalar/Makefile
Changes in directory llvm/lib/Transforms/Scalar: Makefile updated: 1.4 -> 1.5 --- Log message: Only build .a file versions of these libraries, instead of .a and .o versions. This should speed up build times. --- Diffs of the changes: (+1 -0) Makefile |1 + 1 files changed, 1 insertion(+) Index: llvm/lib/Transforms/Scalar/Makefile diff -u llvm/lib/Transforms/Scalar/Makefile:1.4 llvm/lib/Transforms/Scalar/Makefile:1.5 --- llvm/lib/Transforms/Scalar/Makefile:1.4 Wed Oct 27 18:18:45 2004 +++ llvm/lib/Transforms/Scalar/Makefile Sun Oct 23 20:57:21 2005 @@ -9,6 +9,7 @@ LEVEL = ../../.. LIBRARYNAME = LLVMScalarOpts BUILD_ARCHIVE = 1 +DONT_BUILD_RELINKED = 1 include $(LEVEL)/Makefile.common ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Transforms/IPO/Makefile
Changes in directory llvm/lib/Transforms/IPO: Makefile updated: 1.4 -> 1.5 --- Log message: Only build .a file versions of these libraries, instead of .a and .o versions. This should speed up build times. --- Diffs of the changes: (+1 -0) Makefile |1 + 1 files changed, 1 insertion(+) Index: llvm/lib/Transforms/IPO/Makefile diff -u llvm/lib/Transforms/IPO/Makefile:1.4 llvm/lib/Transforms/IPO/Makefile:1.5 --- llvm/lib/Transforms/IPO/Makefile:1.4Wed Oct 27 18:18:45 2004 +++ llvm/lib/Transforms/IPO/MakefileSun Oct 23 20:57:40 2005 @@ -9,6 +9,7 @@ LEVEL = ../../.. LIBRARYNAME = LLVMipo BUILD_ARCHIVE = 1 +DONT_BUILD_RELINKED = 1 include $(LEVEL)/Makefile.common ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Transforms/Utils/Makefile
Changes in directory llvm/lib/Transforms/Utils: Makefile updated: 1.4 -> 1.5 --- Log message: Only build .a file versions of these libraries, instead of .a and .o versions. This should speed up build times. --- Diffs of the changes: (+2 -0) Makefile |2 ++ 1 files changed, 2 insertions(+) Index: llvm/lib/Transforms/Utils/Makefile diff -u llvm/lib/Transforms/Utils/Makefile:1.4 llvm/lib/Transforms/Utils/Makefile:1.5 --- llvm/lib/Transforms/Utils/Makefile:1.4 Wed Oct 27 18:18:45 2004 +++ llvm/lib/Transforms/Utils/Makefile Sun Oct 23 20:59:02 2005 @@ -6,9 +6,11 @@ # the University of Illinois Open Source License. See LICENSE.TXT for details. # ##===--===## + LEVEL = ../../.. LIBRARYNAME = LLVMTransformUtils BUILD_ARCHIVE = 1 +DONT_BUILD_RELINKED = 1 include $(LEVEL)/Makefile.common ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Transforms/Instrumentation/Makefile
Changes in directory llvm/lib/Transforms/Instrumentation: Makefile updated: 1.6 -> 1.7 --- Log message: Only build .a file versions of these libraries, instead of .a and .o versions. This should speed up build times. --- Diffs of the changes: (+1 -0) Makefile |1 + 1 files changed, 1 insertion(+) Index: llvm/lib/Transforms/Instrumentation/Makefile diff -u llvm/lib/Transforms/Instrumentation/Makefile:1.6 llvm/lib/Transforms/Instrumentation/Makefile:1.7 --- llvm/lib/Transforms/Instrumentation/Makefile:1.6Wed Oct 27 18:18:45 2004 +++ llvm/lib/Transforms/Instrumentation/MakefileSun Oct 23 20:58:46 2005 @@ -10,6 +10,7 @@ LIBRARYNAME = LLVMInstrumentation PARALLEL_DIRS = ProfilePaths BUILD_ARCHIVE = 1 +DONT_BUILD_RELINKED = 1 include $(LEVEL)/Makefile.common ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Analysis/IPA/Makefile
Changes in directory llvm/lib/Analysis/IPA: Makefile updated: 1.4 -> 1.5 --- Log message: Only build .a file versions of these libraries, instead of .a and .o versions. This should speed up build times. --- Diffs of the changes: (+1 -0) Makefile |1 + 1 files changed, 1 insertion(+) Index: llvm/lib/Analysis/IPA/Makefile diff -u llvm/lib/Analysis/IPA/Makefile:1.4 llvm/lib/Analysis/IPA/Makefile:1.5 --- llvm/lib/Analysis/IPA/Makefile:1.4 Thu Oct 28 00:36:47 2004 +++ llvm/lib/Analysis/IPA/Makefile Sun Oct 23 20:59:48 2005 @@ -9,6 +9,7 @@ LEVEL = ../../.. LIBRARYNAME = LLVMipa BUILD_ARCHIVE = 1 +DONT_BUILD_RELINKED = 1 include $(LEVEL)/Makefile.common ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Analysis/Makefile
Changes in directory llvm/lib/Analysis: Makefile updated: 1.9 -> 1.10 --- Log message: Only build .a file versions of these libraries, instead of .a and .o versions. This should speed up build times. --- Diffs of the changes: (+1 -0) Makefile |1 + 1 files changed, 1 insertion(+) Index: llvm/lib/Analysis/Makefile diff -u llvm/lib/Analysis/Makefile:1.9 llvm/lib/Analysis/Makefile:1.10 --- llvm/lib/Analysis/Makefile:1.9 Wed Oct 27 18:18:44 2004 +++ llvm/lib/Analysis/Makefile Sun Oct 23 20:59:48 2005 @@ -11,6 +11,7 @@ LIBRARYNAME = LLVMAnalysis PARALLEL_DIRS = IPA DataStructure BUILD_ARCHIVE = 1 +DONT_BUILD_RELINKED = 1 include $(LEVEL)/Makefile.common ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Support/Makefile
Changes in directory llvm/lib/Support: Makefile updated: 1.8 -> 1.9 --- Log message: Only build .a file versions of these libraries, instead of .a and .o versions. This should speed up build times. --- Diffs of the changes: (+1 -0) Makefile |1 + 1 files changed, 1 insertion(+) Index: llvm/lib/Support/Makefile diff -u llvm/lib/Support/Makefile:1.8 llvm/lib/Support/Makefile:1.9 --- llvm/lib/Support/Makefile:1.8 Thu Nov 25 13:38:28 2004 +++ llvm/lib/Support/Makefile Sun Oct 23 21:05:35 2005 @@ -10,5 +10,6 @@ PARALLEL_DIRS=bzip2 LIBRARYNAME = LLVMSupport BUILD_ARCHIVE = 1 +DONT_BUILD_RELINKED := 1 include $(LEVEL)/Makefile.common ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Target/SparcV9/RegAlloc/Notes.txt
Changes in directory llvm/lib/Target/SparcV9/RegAlloc: Notes.txt (r1.2) removed --- Log message: This file is hopelessly out of date --- Diffs of the changes: (+0 -0) 0 files changed ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Target/SparcV9/RegAlloc/Makefile
Changes in directory llvm/lib/Target/SparcV9/RegAlloc: Makefile updated: 1.7 -> 1.8 --- Log message: There is no need to build an archive version of this library --- Diffs of the changes: (+0 -1) Makefile |1 - 1 files changed, 1 deletion(-) Index: llvm/lib/Target/SparcV9/RegAlloc/Makefile diff -u llvm/lib/Target/SparcV9/RegAlloc/Makefile:1.7 llvm/lib/Target/SparcV9/RegAlloc/Makefile:1.8 --- llvm/lib/Target/SparcV9/RegAlloc/Makefile:1.7 Wed Oct 27 18:18:45 2004 +++ llvm/lib/Target/SparcV9/RegAlloc/Makefile Sun Oct 23 21:09:03 2005 @@ -10,6 +10,5 @@ LEVEL = ../../../.. DIRS = LIBRARYNAME = LLVMSparcV9RegAlloc -BUILD_ARCHIVE = 1 include $(LEVEL)/Makefile.common ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/System/Makefile
Changes in directory llvm/lib/System: Makefile updated: 1.7 -> 1.8 --- Log message: Only build .a file versions of these libraries, instead of .a and .o versions. This should speed up build times. --- Diffs of the changes: (+1 -0) Makefile |1 + 1 files changed, 1 insertion(+) Index: llvm/lib/System/Makefile diff -u llvm/lib/System/Makefile:1.7 llvm/lib/System/Makefile:1.8 --- llvm/lib/System/Makefile:1.7Fri Jan 14 16:43:01 2005 +++ llvm/lib/System/MakefileSun Oct 23 21:11:51 2005 @@ -9,6 +9,7 @@ LEVEL = ../.. LIBRARYNAME = LLVMSystem BUILD_ARCHIVE = 1 +DONT_BUILD_RELINKED = 1 EXTRA_DIST = Unix Win32 ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Target/Makefile
Changes in directory llvm/lib/Target: Makefile updated: 1.24 -> 1.25 --- Log message: only build .a version of this library --- Diffs of the changes: (+1 -0) Makefile |1 + 1 files changed, 1 insertion(+) Index: llvm/lib/Target/Makefile diff -u llvm/lib/Target/Makefile:1.24 llvm/lib/Target/Makefile:1.25 --- llvm/lib/Target/Makefile:1.24 Fri Apr 22 12:20:11 2005 +++ llvm/lib/Target/MakefileSun Oct 23 21:14:49 2005 @@ -9,6 +9,7 @@ LEVEL = ../.. LIBRARYNAME = LLVMTarget BUILD_ARCHIVE = 1 +DONT_BUILD_RELINKED = 1 # We include this early so we can access the value of TARGETS_TO_BUILD as the # value for PARALLEL_DIRS which must be set before Makefile.rules is included ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/Makefile.rules
Changes in directory llvm: Makefile.rules updated: 1.331 -> 1.332 --- Log message: Now that all libraries are built in either .o or .a form, make BUILD_ARCHIVE default to turning off building of relinked objects. --- Diffs of the changes: (+10 -2) Makefile.rules | 12 ++-- 1 files changed, 10 insertions(+), 2 deletions(-) Index: llvm/Makefile.rules diff -u llvm/Makefile.rules:1.331 llvm/Makefile.rules:1.332 --- llvm/Makefile.rules:1.331 Sun Oct 23 20:15:14 2005 +++ llvm/Makefile.rules Sun Oct 23 21:21:45 2005 @@ -824,10 +824,18 @@ #- # ReLinked Library Targets: -# If the user didn't explicitly forbid building a -# relinked then we provide targets for building them. +# If the user explicitly requests a relinked library with +# BUILD_RELINKED, provide it. Otherwise, if they specify +# neither of BUILD_ARCHIVE or DONT_BUILD_RELINKED, give +# them one. #- +ifndef BUILD_ARCHIVE ifndef DONT_BUILD_RELINKED +BUILD_RELINKED = 1 +endif +endif + +ifdef BUILD_RELINKED all-local:: $(LibName.O) ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Bytecode/Archive/Makefile
Changes in directory llvm/lib/Bytecode/Archive: Makefile updated: 1.1 -> 1.2 --- Log message: DONT_BUILD_RELINKED is gone and implied by BUILD_ARCHIVE now --- Diffs of the changes: (+0 -1) Makefile |1 - 1 files changed, 1 deletion(-) Index: llvm/lib/Bytecode/Archive/Makefile diff -u llvm/lib/Bytecode/Archive/Makefile:1.1 llvm/lib/Bytecode/Archive/Makefile:1.2 --- llvm/lib/Bytecode/Archive/Makefile:1.1 Sat Nov 6 02:52:36 2004 +++ llvm/lib/Bytecode/Archive/Makefile Sun Oct 23 21:24:54 2005 @@ -13,6 +13,5 @@ # We only want an archive so only those modules actually used by a tool are # included. BUILD_ARCHIVE = 1 -DONT_BUILD_RELINKED = 1 include $(LEVEL)/Makefile.common ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Analysis/Makefile
Changes in directory llvm/lib/Analysis: Makefile updated: 1.10 -> 1.11 --- Log message: DONT_BUILD_RELINKED is gone and implied by BUILD_ARCHIVE now --- Diffs of the changes: (+0 -1) Makefile |1 - 1 files changed, 1 deletion(-) Index: llvm/lib/Analysis/Makefile diff -u llvm/lib/Analysis/Makefile:1.10 llvm/lib/Analysis/Makefile:1.11 --- llvm/lib/Analysis/Makefile:1.10 Sun Oct 23 20:59:48 2005 +++ llvm/lib/Analysis/Makefile Sun Oct 23 21:24:54 2005 @@ -11,7 +11,6 @@ LIBRARYNAME = LLVMAnalysis PARALLEL_DIRS = IPA DataStructure BUILD_ARCHIVE = 1 -DONT_BUILD_RELINKED = 1 include $(LEVEL)/Makefile.common ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Analysis/IPA/Makefile
Changes in directory llvm/lib/Analysis/IPA: Makefile updated: 1.5 -> 1.6 --- Log message: DONT_BUILD_RELINKED is gone and implied by BUILD_ARCHIVE now --- Diffs of the changes: (+1 -2) Makefile |3 +-- 1 files changed, 1 insertion(+), 2 deletions(-) Index: llvm/lib/Analysis/IPA/Makefile diff -u llvm/lib/Analysis/IPA/Makefile:1.5 llvm/lib/Analysis/IPA/Makefile:1.6 --- llvm/lib/Analysis/IPA/Makefile:1.5 Sun Oct 23 20:59:48 2005 +++ llvm/lib/Analysis/IPA/Makefile Sun Oct 23 21:24:54 2005 @@ -6,10 +6,9 @@ # the University of Illinois Open Source License. See LICENSE.TXT for details. # ##===--===## + LEVEL = ../../.. LIBRARYNAME = LLVMipa BUILD_ARCHIVE = 1 -DONT_BUILD_RELINKED = 1 - include $(LEVEL)/Makefile.common ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Transforms/IPO/Makefile
Changes in directory llvm/lib/Transforms/IPO: Makefile updated: 1.5 -> 1.6 --- Log message: DONT_BUILD_RELINKED is gone and implied by BUILD_ARCHIVE now --- Diffs of the changes: (+1 -1) Makefile |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index: llvm/lib/Transforms/IPO/Makefile diff -u llvm/lib/Transforms/IPO/Makefile:1.5 llvm/lib/Transforms/IPO/Makefile:1.6 --- llvm/lib/Transforms/IPO/Makefile:1.5Sun Oct 23 20:57:40 2005 +++ llvm/lib/Transforms/IPO/MakefileSun Oct 23 21:25:48 2005 @@ -6,10 +6,10 @@ # the University of Illinois Open Source License. See LICENSE.TXT for details. # ##===--===## + LEVEL = ../../.. LIBRARYNAME = LLVMipo BUILD_ARCHIVE = 1 -DONT_BUILD_RELINKED = 1 include $(LEVEL)/Makefile.common ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Transforms/Makefile
Changes in directory llvm/lib/Transforms: Makefile updated: 1.10 -> 1.11 --- Log message: DONT_BUILD_RELINKED is gone and implied by BUILD_ARCHIVE now --- Diffs of the changes: (+1 -1) Makefile |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index: llvm/lib/Transforms/Makefile diff -u llvm/lib/Transforms/Makefile:1.10 llvm/lib/Transforms/Makefile:1.11 --- llvm/lib/Transforms/Makefile:1.10 Sun Oct 23 20:56:50 2005 +++ llvm/lib/Transforms/MakefileSun Oct 23 21:25:48 2005 @@ -6,11 +6,11 @@ # the University of Illinois Open Source License. See LICENSE.TXT for details. # ##===--===## + LEVEL = ../.. PARALLEL_DIRS = Utils Instrumentation Scalar IPO LIBRARYNAME = LLVMTransforms BUILD_ARCHIVE = 1 -DONT_BUILD_RELINKED = 1 include $(LEVEL)/Makefile.common ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Target/Makefile
Changes in directory llvm/lib/Target: Makefile updated: 1.25 -> 1.26 --- Log message: DONT_BUILD_RELINKED is gone and implied by BUILD_ARCHIVE now --- Diffs of the changes: (+1 -1) Makefile |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index: llvm/lib/Target/Makefile diff -u llvm/lib/Target/Makefile:1.25 llvm/lib/Target/Makefile:1.26 --- llvm/lib/Target/Makefile:1.25 Sun Oct 23 21:14:49 2005 +++ llvm/lib/Target/MakefileSun Oct 23 21:25:48 2005 @@ -6,10 +6,10 @@ # the University of Illinois Open Source License. See LICENSE.TXT for details. # ##===--===## + LEVEL = ../.. LIBRARYNAME = LLVMTarget BUILD_ARCHIVE = 1 -DONT_BUILD_RELINKED = 1 # We include this early so we can access the value of TARGETS_TO_BUILD as the # value for PARALLEL_DIRS which must be set before Makefile.rules is included ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Linker/Makefile
Changes in directory llvm/lib/Linker: Makefile updated: 1.2 -> 1.3 --- Log message: DONT_BUILD_RELINKED is gone and implied by BUILD_ARCHIVE now --- Diffs of the changes: (+1 -1) Makefile |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index: llvm/lib/Linker/Makefile diff -u llvm/lib/Linker/Makefile:1.2 llvm/lib/Linker/Makefile:1.3 --- llvm/lib/Linker/Makefile:1.2Sun Nov 14 16:03:14 2004 +++ llvm/lib/Linker/MakefileSun Oct 23 21:25:48 2005 @@ -6,10 +6,10 @@ # University of Illinois Open Source License. See LICENSE.TXT for details. # ##===--===## + LEVEL = ../.. LIBRARYNAME = LLVMLinker BUILD_ARCHIVE := 1 -DONT_BUILD_RELINKED := 1 include $(LEVEL)/Makefile.common ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Transforms/Instrumentation/Makefile
Changes in directory llvm/lib/Transforms/Instrumentation: Makefile updated: 1.7 -> 1.8 --- Log message: DONT_BUILD_RELINKED is gone and implied by BUILD_ARCHIVE now --- Diffs of the changes: (+1 -1) Makefile |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index: llvm/lib/Transforms/Instrumentation/Makefile diff -u llvm/lib/Transforms/Instrumentation/Makefile:1.7 llvm/lib/Transforms/Instrumentation/Makefile:1.8 --- llvm/lib/Transforms/Instrumentation/Makefile:1.7Sun Oct 23 20:58:46 2005 +++ llvm/lib/Transforms/Instrumentation/MakefileSun Oct 23 21:25:48 2005 @@ -6,11 +6,11 @@ # the University of Illinois Open Source License. See LICENSE.TXT for details. # ##===--===## + LEVEL = ../../.. LIBRARYNAME = LLVMInstrumentation PARALLEL_DIRS = ProfilePaths BUILD_ARCHIVE = 1 -DONT_BUILD_RELINKED = 1 include $(LEVEL)/Makefile.common ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Transforms/Scalar/Makefile
Changes in directory llvm/lib/Transforms/Scalar: Makefile updated: 1.5 -> 1.6 --- Log message: DONT_BUILD_RELINKED is gone and implied by BUILD_ARCHIVE now --- Diffs of the changes: (+1 -1) Makefile |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index: llvm/lib/Transforms/Scalar/Makefile diff -u llvm/lib/Transforms/Scalar/Makefile:1.5 llvm/lib/Transforms/Scalar/Makefile:1.6 --- llvm/lib/Transforms/Scalar/Makefile:1.5 Sun Oct 23 20:57:21 2005 +++ llvm/lib/Transforms/Scalar/Makefile Sun Oct 23 21:25:48 2005 @@ -6,10 +6,10 @@ # the University of Illinois Open Source License. See LICENSE.TXT for details. # ##===--===## + LEVEL = ../../.. LIBRARYNAME = LLVMScalarOpts BUILD_ARCHIVE = 1 -DONT_BUILD_RELINKED = 1 include $(LEVEL)/Makefile.common ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Support/Makefile
Changes in directory llvm/lib/Support: Makefile updated: 1.9 -> 1.10 --- Log message: DONT_BUILD_RELINKED is gone and implied by BUILD_ARCHIVE now --- Diffs of the changes: (+1 -1) Makefile |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index: llvm/lib/Support/Makefile diff -u llvm/lib/Support/Makefile:1.9 llvm/lib/Support/Makefile:1.10 --- llvm/lib/Support/Makefile:1.9 Sun Oct 23 21:05:35 2005 +++ llvm/lib/Support/Makefile Sun Oct 23 21:25:48 2005 @@ -6,10 +6,10 @@ # the University of Illinois Open Source License. See LICENSE.TXT for details. # ##===--===## + LEVEL = ../.. PARALLEL_DIRS=bzip2 LIBRARYNAME = LLVMSupport BUILD_ARCHIVE = 1 -DONT_BUILD_RELINKED := 1 include $(LEVEL)/Makefile.common ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Transforms/Utils/Makefile
Changes in directory llvm/lib/Transforms/Utils: Makefile updated: 1.5 -> 1.6 --- Log message: DONT_BUILD_RELINKED is gone and implied by BUILD_ARCHIVE now --- Diffs of the changes: (+0 -1) Makefile |1 - 1 files changed, 1 deletion(-) Index: llvm/lib/Transforms/Utils/Makefile diff -u llvm/lib/Transforms/Utils/Makefile:1.5 llvm/lib/Transforms/Utils/Makefile:1.6 --- llvm/lib/Transforms/Utils/Makefile:1.5 Sun Oct 23 20:59:02 2005 +++ llvm/lib/Transforms/Utils/Makefile Sun Oct 23 21:26:13 2005 @@ -10,7 +10,6 @@ LEVEL = ../../.. LIBRARYNAME = LLVMTransformUtils BUILD_ARCHIVE = 1 -DONT_BUILD_RELINKED = 1 include $(LEVEL)/Makefile.common ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/System/Makefile
Changes in directory llvm/lib/System: Makefile updated: 1.8 -> 1.9 --- Log message: DONT_BUILD_RELINKED is gone and implied by BUILD_ARCHIVE now --- Diffs of the changes: (+1 -1) Makefile |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index: llvm/lib/System/Makefile diff -u llvm/lib/System/Makefile:1.8 llvm/lib/System/Makefile:1.9 --- llvm/lib/System/Makefile:1.8Sun Oct 23 21:11:51 2005 +++ llvm/lib/System/MakefileSun Oct 23 21:25:48 2005 @@ -6,10 +6,10 @@ # University of Illinois Open Source License. See LICENSE.TXT for details. # ##===--===## + LEVEL = ../.. LIBRARYNAME = LLVMSystem BUILD_ARCHIVE = 1 -DONT_BUILD_RELINKED = 1 EXTRA_DIST = Unix Win32 ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/include/llvm/Transforms/LinkAllPasses.h
Changes in directory llvm/include/llvm/Transforms: LinkAllPasses.h updated: 1.22 -> 1.23 --- Log message: Don't link these three passes in anymore --- Diffs of the changes: (+0 -3) LinkAllPasses.h |3 --- 1 files changed, 3 deletions(-) Index: llvm/include/llvm/Transforms/LinkAllPasses.h diff -u llvm/include/llvm/Transforms/LinkAllPasses.h:1.22 llvm/include/llvm/Transforms/LinkAllPasses.h:1.23 --- llvm/include/llvm/Transforms/LinkAllPasses.h:1.22 Sun Oct 23 19:16:03 2005 +++ llvm/include/llvm/Transforms/LinkAllPasses.hSun Oct 23 21:30:25 2005 @@ -45,7 +45,6 @@ (void) llvm::createBlockProfilerPass(); (void) llvm::createBreakCriticalEdgesPass(); (void) llvm::createCFGSimplificationPass(); - (void) llvm::createCombineBranchesPass(); (void) llvm::createConstantMergePass(); (void) llvm::createConstantPropagationPass(); (void) llvm::createCorrelatedExpressionEliminationPass(); @@ -73,7 +72,6 @@ (void) llvm::createLICMPass(); (void) llvm::createLoadValueNumberingPass(); (void) llvm::createLoopExtractorPass(); - (void) llvm::createLoopInstrumentationPass(); (void) llvm::createLoopSimplifyPass(); (void) llvm::createLoopStrengthReducePass(); (void) llvm::createLoopUnrollPass(); @@ -90,7 +88,6 @@ (void) llvm::createNoProfileInfoPass(); (void) llvm::createPREPass(); (void) llvm::createProfileLoaderPass(); - (void) llvm::createProfilePathsPass(); (void) llvm::createPromoteMemoryToRegisterPass(); (void) llvm::createPruneEHPass(); (void) llvm::createRaiseAllocationsPass(); ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/tools/opt/Makefile
Changes in directory llvm/tools/opt: Makefile updated: 1.50 -> 1.51 --- Log message: Remove a now-unneeded library --- Diffs of the changes: (+1 -1) Makefile |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index: llvm/tools/opt/Makefile diff -u llvm/tools/opt/Makefile:1.50 llvm/tools/opt/Makefile:1.51 --- llvm/tools/opt/Makefile:1.50Sun Oct 23 19:12:20 2005 +++ llvm/tools/opt/Makefile Sun Oct 23 21:31:05 2005 @@ -9,7 +9,7 @@ LEVEL = ../.. TOOLNAME = opt -USEDLIBS = LLVMBCReader LLVMBCWriter LLVMInstrumentation.a LLVMProfilePaths \ +USEDLIBS = LLVMBCReader LLVMBCWriter LLVMInstrumentation.a \ LLVMScalarOpts.a LLVMipo.a LLVMipa.a LLVMDataStructure LLVMTransforms.a \ LLVMTarget.a LLVMAnalysis.a LLVMTransformUtils.a LLVMCore LLVMSupport.a \ LLVMbzip2 LLVMSystem.a ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/tools/bugpoint/Makefile
Changes in directory llvm/tools/bugpoint: Makefile updated: 1.13 -> 1.14 --- Log message: Remove a now-unneeded library --- Diffs of the changes: (+1 -1) Makefile |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index: llvm/tools/bugpoint/Makefile diff -u llvm/tools/bugpoint/Makefile:1.13 llvm/tools/bugpoint/Makefile:1.14 --- llvm/tools/bugpoint/Makefile:1.13 Sun Oct 23 20:05:53 2005 +++ llvm/tools/bugpoint/MakefileSun Oct 23 21:31:05 2005 @@ -10,7 +10,7 @@ TOOLNAME = bugpoint -OPTLIBS = LLVMTransforms.a LLVMInstrumentation.a LLVMProfilePaths +OPTLIBS = LLVMTransforms.a LLVMInstrumentation.a ANALIBS = LLVMDataStructure LLVMipa.a LLVMTarget.a USEDLIBS = LLVMipo.a LLVMScalarOpts.a $(OPTLIBS) $(ANALIBS) LLVMAnalysis.a \ ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Transforms/Instrumentation/Makefile
Changes in directory llvm/lib/Transforms/Instrumentation: Makefile updated: 1.8 -> 1.9 --- Log message: Do not build the ProfilePaths directory anymore --- Diffs of the changes: (+0 -1) Makefile |1 - 1 files changed, 1 deletion(-) Index: llvm/lib/Transforms/Instrumentation/Makefile diff -u llvm/lib/Transforms/Instrumentation/Makefile:1.8 llvm/lib/Transforms/Instrumentation/Makefile:1.9 --- llvm/lib/Transforms/Instrumentation/Makefile:1.8Sun Oct 23 21:25:48 2005 +++ llvm/lib/Transforms/Instrumentation/MakefileSun Oct 23 21:31:49 2005 @@ -9,7 +9,6 @@ LEVEL = ../../.. LIBRARYNAME = LLVMInstrumentation -PARALLEL_DIRS = ProfilePaths BUILD_ARCHIVE = 1 include $(LEVEL)/Makefile.common ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Transforms/Instrumentation/ProfilePaths/CombineBranch.cpp EdgeCode.cpp Graph.cpp Graph.h GraphAuxiliary.cpp InstLoops.cpp Makefile ProfilePaths.cpp RetracePath.cpp
Changes in directory llvm/lib/Transforms/Instrumentation/ProfilePaths: CombineBranch.cpp (r1.15) removed EdgeCode.cpp (r1.31) removed Graph.cpp (r1.21) removed Graph.h (r1.14) removed GraphAuxiliary.cpp (r1.28) removed InstLoops.cpp (r1.22) removed Makefile (r1.6) removed ProfilePaths.cpp (r1.44) removed RetracePath.cpp (r1.13) removed --- Log message: Remove some beta code that no longer has an owner. --- Diffs of the changes: (+0 -0) 0 files changed ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/docs/ReleaseNotes.html
Changes in directory llvm/docs: ReleaseNotes.html updated: 1.333 -> 1.334 --- Log message: Three of these have been removed, as warned --- Diffs of the changes: (+2 -2) ReleaseNotes.html |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) Index: llvm/docs/ReleaseNotes.html diff -u llvm/docs/ReleaseNotes.html:1.333 llvm/docs/ReleaseNotes.html:1.334 --- llvm/docs/ReleaseNotes.html:1.333 Tue Jul 12 11:36:24 2005 +++ llvm/docs/ReleaseNotes.html Sun Oct 23 21:33:44 2005 @@ -168,7 +168,7 @@ The following passes are incomplete or buggy, and may be removed in future -releases: -cee, -branch-combine, -instloops, -paths, -pre +releases: -cee, -pre The llvm-db tool is in a very early stage of development, but can be used to step through programs and inspect the stack. The "iterative scan" register allocator (enabled with @@ -588,7 +588,7 @@ src="http://www.w3.org/Icons/valid-html401"; alt="Valid HTML 4.01!" /> http://llvm.cs.uiuc.edu";>The LLVM Compiler Infrastructure - Last modified: $Date: 2005/07/12 16:36:24 $ + Last modified: $Date: 2005/10/24 02:33:44 $ ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/include/llvm/Analysis/LinkAllAnalyses.h FindUnsafePointerTypes.h
Changes in directory llvm/include/llvm/Analysis: LinkAllAnalyses.h updated: 1.1 -> 1.2 FindUnsafePointerTypes.h (r1.18) removed --- Log message: This pass is very old and quite useless, remove it. --- Diffs of the changes: (+0 -2) LinkAllAnalyses.h |2 -- 1 files changed, 2 deletions(-) Index: llvm/include/llvm/Analysis/LinkAllAnalyses.h diff -u llvm/include/llvm/Analysis/LinkAllAnalyses.h:1.1 llvm/include/llvm/Analysis/LinkAllAnalyses.h:1.2 --- llvm/include/llvm/Analysis/LinkAllAnalyses.h:1.1Sun Oct 23 19:59:49 2005 +++ llvm/include/llvm/Analysis/LinkAllAnalyses.hSun Oct 23 21:35:25 2005 @@ -17,7 +17,6 @@ #include "llvm/Analysis/AliasSetTracker.h" #include "llvm/Analysis/CallGraph.h" -#include "llvm/Analysis/FindUnsafePointerTypes.h" #include "llvm/Analysis/FindUsedTypes.h" #include "llvm/Analysis/IntervalPartition.h" #include "llvm/Analysis/PostDominators.h" @@ -52,7 +51,6 @@ (void)new llvm::PostDominatorSet(); (void)new llvm::CallGraph(); (void)new llvm::FindUsedTypes(); - (void)new llvm::FindUnsafePointerTypes(); (void)new llvm::ScalarEvolution(); ((llvm::Function*)0)->viewCFGOnly(); llvm::AliasSetTracker X(*(llvm::AliasAnalysis*)0); ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Analysis/IPA/FindUnsafePointerTypes.cpp
Changes in directory llvm/lib/Analysis/IPA: FindUnsafePointerTypes.cpp (r1.28) removed --- Log message: Remove this pass, it is not useful --- Diffs of the changes: (+0 -0) 0 files changed ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/win32/analyze/analyze.vcproj
Changes in directory llvm/win32/analyze: analyze.vcproj updated: 1.4 -> 1.5 --- Log message: Update Visual Studio projects to account for recent changes. --- Diffs of the changes: (+0 -2) analyze.vcproj |2 -- 1 files changed, 2 deletions(-) Index: llvm/win32/analyze/analyze.vcproj diff -u llvm/win32/analyze/analyze.vcproj:1.4 llvm/win32/analyze/analyze.vcproj:1.5 --- llvm/win32/analyze/analyze.vcproj:1.4 Sun Jan 30 11:54:12 2005 +++ llvm/win32/analyze/analyze.vcproj Sun Oct 23 21:57:24 2005 @@ -36,7 +36,6 @@ Name="VCCustomBuildTool"/> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/win32/Analysis/Analysis.vcproj
Changes in directory llvm/win32/Analysis: Analysis.vcproj updated: 1.12 -> 1.13 --- Log message: Update Visual Studio projects to account for recent changes. --- Diffs of the changes: (+0 -9) Analysis.vcproj |9 - 1 files changed, 9 deletions(-) Index: llvm/win32/Analysis/Analysis.vcproj diff -u llvm/win32/Analysis/Analysis.vcproj:1.12 llvm/win32/Analysis/Analysis.vcproj:1.13 --- llvm/win32/Analysis/Analysis.vcproj:1.12Sat Jul 30 13:22:27 2005 +++ llvm/win32/Analysis/Analysis.vcproj Sun Oct 23 21:57:24 2005 @@ -179,17 +179,11 @@ RelativePath="..\..\lib\Analysis\Ipa\CallGraphSCCPass.cpp"> - - - - - - http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/win32/Transforms/Transforms.vcproj
Changes in directory llvm/win32/Transforms: Transforms.vcproj updated: 1.13 -> 1.14 --- Log message: Update Visual Studio projects to account for recent changes. --- Diffs of the changes: (+0 -28) Transforms.vcproj | 28 1 files changed, 28 deletions(-) Index: llvm/win32/Transforms/Transforms.vcproj diff -u llvm/win32/Transforms/Transforms.vcproj:1.13 llvm/win32/Transforms/Transforms.vcproj:1.14 --- llvm/win32/Transforms/Transforms.vcproj:1.13Mon Apr 25 21:57:49 2005 +++ llvm/win32/Transforms/Transforms.vcproj Sun Oct 23 21:57:24 2005 @@ -142,34 +142,6 @@ - - - - - - - - - - - - - - - - - - http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/include/llvm/CodeGen/Passes.h
Changes in directory llvm/include/llvm/CodeGen: Passes.h updated: 1.20 -> 1.21 --- Log message: Remove a prototype --- Diffs of the changes: (+0 -5) Passes.h |5 - 1 files changed, 5 deletions(-) Index: llvm/include/llvm/CodeGen/Passes.h diff -u llvm/include/llvm/CodeGen/Passes.h:1.20 llvm/include/llvm/CodeGen/Passes.h:1.21 --- llvm/include/llvm/CodeGen/Passes.h:1.20 Sun May 1 11:14:34 2005 +++ llvm/include/llvm/CodeGen/Passes.h Sun Oct 23 23:13:21 2005 @@ -70,11 +70,6 @@ /// FunctionPass *createLinearScanRegisterAllocator(); - /// IterativeScanRegisterAllocation Pass - This pass implements the iterative - /// scan register allocation algorithm, a global register allocator. - /// - FunctionPass *createIterativeScanRegisterAllocator(); - /// PrologEpilogCodeInserter Pass - This pass inserts prolog and epilog code, /// and eliminates abstract frame references. /// ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/CodeGen/Passes.cpp RegAllocIterativeScan.cpp
Changes in directory llvm/lib/CodeGen: Passes.cpp updated: 1.15 -> 1.16 RegAllocIterativeScan.cpp (r1.22) removed --- Log message: Alkis agrees that that iterative scan allocator isn't going to be worked on in the future, remove it. --- Diffs of the changes: (+1 -4) Passes.cpp |5 + 1 files changed, 1 insertion(+), 4 deletions(-) Index: llvm/lib/CodeGen/Passes.cpp diff -u llvm/lib/CodeGen/Passes.cpp:1.15 llvm/lib/CodeGen/Passes.cpp:1.16 --- llvm/lib/CodeGen/Passes.cpp:1.15Thu Apr 21 17:33:33 2005 +++ llvm/lib/CodeGen/Passes.cpp Sun Oct 23 23:14:30 2005 @@ -18,7 +18,7 @@ using namespace llvm; namespace { - enum RegAllocName { simple, local, linearscan, iterativescan }; + enum RegAllocName { simple, local, linearscan }; cl::opt RegAlloc( @@ -29,7 +29,6 @@ clEnumVal(simple," simple register allocator"), clEnumVal(local, " local register allocator"), clEnumVal(linearscan," linear scan register allocator"), - clEnumVal(iterativescan, " iterative scan register allocator"), clEnumValEnd), cl::init(linearscan)); } @@ -45,8 +44,6 @@ return createLocalRegisterAllocator(); case linearscan: return createLinearScanRegisterAllocator(); - case iterativescan: -return createIterativeScanRegisterAllocator(); } } ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/docs/ReleaseNotes.html
Changes in directory llvm/docs: ReleaseNotes.html updated: 1.334 -> 1.335 --- Log message: This RA no longer exists --- Diffs of the changes: (+1 -3) ReleaseNotes.html |4 +--- 1 files changed, 1 insertion(+), 3 deletions(-) Index: llvm/docs/ReleaseNotes.html diff -u llvm/docs/ReleaseNotes.html:1.334 llvm/docs/ReleaseNotes.html:1.335 --- llvm/docs/ReleaseNotes.html:1.334 Sun Oct 23 21:33:44 2005 +++ llvm/docs/ReleaseNotes.html Sun Oct 23 23:15:09 2005 @@ -171,8 +171,6 @@ releases: -cee, -pre The llvm-db tool is in a very early stage of development, but can be used to step through programs and inspect the stack. -The "iterative scan" register allocator (enabled with --regalloc=iterativescan) is not stable. The SparcV8, Alpha, and IA64 code generators are experimental. @@ -588,7 +586,7 @@ src="http://www.w3.org/Icons/valid-html401"; alt="Valid HTML 4.01!" /> http://llvm.cs.uiuc.edu";>The LLVM Compiler Infrastructure - Last modified: $Date: 2005/10/24 02:33:44 $ + Last modified: $Date: 2005/10/24 04:15:09 $ ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/test/Regression/Transforms/ProfilePaths/2002-05-22-CastCrash.ll dg.exp
Changes in directory llvm/test/Regression/Transforms/ProfilePaths: 2002-05-22-CastCrash.ll (r1.2) removed dg.exp (r1.2) removed --- Log message: this pass is gone --- Diffs of the changes: (+0 -0) 0 files changed ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/test/Regression/Transforms/BranchCombine/2004-06-01-Simple.ll dg.exp
Changes in directory llvm/test/Regression/Transforms/BranchCombine: 2004-06-01-Simple.ll (r1.1) removed dg.exp (r1.2) removed --- Log message: This pass is gone --- Diffs of the changes: (+0 -0) 0 files changed ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/lib/Target/SparcV8/SparcV8CodeEmitter.cpp
Changes in directory llvm/lib/Target/SparcV8: SparcV8CodeEmitter.cpp updated: 1.4 -> 1.5 --- Log message: Make this build with GCC 4.1, patch contributed by Vladimir A. Merzliakov! --- Diffs of the changes: (+2 -2) SparcV8CodeEmitter.cpp |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) Index: llvm/lib/Target/SparcV8/SparcV8CodeEmitter.cpp diff -u llvm/lib/Target/SparcV8/SparcV8CodeEmitter.cpp:1.4 llvm/lib/Target/SparcV8/SparcV8CodeEmitter.cpp:1.5 --- llvm/lib/Target/SparcV8/SparcV8CodeEmitter.cpp:1.4 Thu Apr 21 18:21:30 2005 +++ llvm/lib/Target/SparcV8/SparcV8CodeEmitter.cpp Sun Oct 23 23:51:35 2005 @@ -181,6 +181,6 @@ abort(); } -#include "SparcV8GenCodeEmitter.inc" - } // end llvm namespace + +#include "SparcV8GenCodeEmitter.inc" ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
[llvm-commits] CVS: llvm/include/llvm/Support/CommandLine.h
Changes in directory llvm/include/llvm/Support: CommandLine.h updated: 1.51 -> 1.52 --- Log message: Move the END_WITH_NULL marker. Vladimir suggests that this works better with GCC 4.1. I tried it with 4.0 and 3.3 and it seems fine. --- Diffs of the changes: (+2 -7) CommandLine.h |9 ++--- 1 files changed, 2 insertions(+), 7 deletions(-) Index: llvm/include/llvm/Support/CommandLine.h diff -u llvm/include/llvm/Support/CommandLine.h:1.51 llvm/include/llvm/Support/CommandLine.h:1.52 --- llvm/include/llvm/Support/CommandLine.h:1.51Sun Oct 23 10:22:50 2005 +++ llvm/include/llvm/Support/CommandLine.h Mon Oct 24 00:03:46 2005 @@ -334,14 +334,9 @@ } }; -// Silly GCC doesn't allow attributes on a function definition. template -ValuesClass values(const char *Arg, DataType Val, const char *Desc, - ...) END_WITH_NULL; - -template -ValuesClass values(const char *Arg, DataType Val, const char *Desc, - ...) { +ValuesClass END_WITH_NULL values(const char *Arg, DataType Val, + const char *Desc, ...) { va_list ValueArgs; va_start(ValueArgs, Desc); ValuesClass Vals(Arg, Val, Desc, ValueArgs); ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
Re: [llvm-commits] CVS: llvm/include/llvm/Support/CommandLine.h
Move the END_WITH_NULL marker. Vladimir suggests that this works better with GCC 4.1. I tried it with 4.0 and 3.3 and it seems fine. Just for note: this suggested by Jeff Cohen in http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20051017/028884.html I only check for 4.1.0 and post patch :) Vladimir ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits