aboutsummaryrefslogtreecommitdiffstats
path: root/tools/llvmc/CompilerDriver.cpp
Commit message (Collapse)AuthorAgeFilesLines
* For PR786:Reid Spencer2006-11-021-7/+0
| | | | | | | | | | | Turn on -Wunused and -Wno-unused-parameter. Clean up most of the resulting fall out by removing unused variables. Remaining warnings have to do with unused functions (I didn't want to delete code without review) and unused variables in generated code. Maintainers should clean up the remaining issues when they see them. All changes pass DejaGnu tests and Olden. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31380 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR797:Reid Spencer2006-08-251-2/+3
| | | | | | | | Remove exception throwing/handling from lib/Bytecode, and adjust its users to compensate for changes in the interface. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29875 91177308-0d34-0410-b5e6-96231b3b80d8
* Make the sys::Path::GetTemporaryDirectory method not throw exceptions andReid Spencer2006-08-221-10/+30
| | | | | | | adjust users of it to compensate. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29831 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR797:Reid Spencer2006-08-211-10/+14
| | | | | | | | | Adjust usage of the ExecuteAndWait function to use the last argument which is the ErrMsg string. This is necessitated because this function no longer throws exceptions on error. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29791 91177308-0d34-0410-b5e6-96231b3b80d8
* Patches to correct several bugs in llvmc.Reid Spencer2006-08-161-4/+49
| | | | | | | Patches contributed by Bram Adams. Thanks Bram. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29729 91177308-0d34-0410-b5e6-96231b3b80d8
* No need to check isWriteable here (which isn't sufficient anyway). Just attemptChris Lattner2006-08-011-1/+2
| | | | | | | to do the operation and if it fails, oh well. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29446 91177308-0d34-0410-b5e6-96231b3b80d8
* silly cleanupChris Lattner2006-05-291-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28543 91177308-0d34-0410-b5e6-96231b3b80d8
* Eliminate all remaining tabs and trailing spaces.Jeff Cohen2005-07-271-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22523 91177308-0d34-0410-b5e6-96231b3b80d8
* Final Changes For PR495:Reid Spencer2005-07-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | This chagne just renames some sys::Path methods to ensure they are not misused. The Path documentation now divides methods into two dimensions: Path/Disk and accessor/mutator. Path accessors and mutators only operate on the Path object itself without making any disk accesses. Disk accessors and mutators will also access or modify the file system. Because of the potentially destructive nature of disk mutators, it was decided that all such methods should end in the work "Disk" to ensure the user recognizes that the change will occur on the file system. This patch makes that change. The method name changes are: makeReadable -> makeReadableOnDisk makeWriteable -> makeWriteableOnDisk makeExecutable -> makeExecutableOnDisk setStatusInfo -> setStatusInfoOnDisk createDirectory -> createDirectoryOnDisk createFile -> createFileOnDisk createTemporaryFile -> createTemporaryFileOnDisk destroy -> eraseFromDisk rename -> renamePathOnDisk These changes pass the Linux Deja Gnu tests. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22354 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR495:Reid Spencer2005-07-071-15/+15
| | | | | | | | | | | | | | | | | | | | | | Get rid of the difference between file paths and directory paths. The Path class now simply stores a path that can refer to either a file or a directory. This required various changes in the implementation and interface of the class with the corresponding impact to its users. Doxygen comments were also updated to reflect these changes. Interface changes are: appendDirectory -> appendComponent appendFile -> appendComponent elideDirectory -> eraseComponent elideFile -> eraseComponent elideSuffix -> eraseSuffix renameFile -> rename setDirectory -> set setFile -> set Changes pass Dejagnu and llvm-test/SingleSource tests. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22349 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR495:Reid Spencer2005-07-071-9/+9
| | | | | | | | | | | | Change interface to Path class: readable -> canRead writable -> canWrite executable -> canExecute More (incremental) changes coming to close 495. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22345 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR514:Reid Spencer2005-05-191-1/+33
| | | | | | | | | | | * language specification files are no longer configured with "configure" * add substitutions for %bindir%, %libdir%, and various llvmgcc related variables needed in the c and cpp spec files. * Implement the stubstituions in the Compiler Driver. * Move st.in to projects/Stacker/tools/stkrc where it belongs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22128 91177308-0d34-0410-b5e6-96231b3b80d8
* Minor clean-upsMisha Brukman2005-05-031-15/+13
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21678 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove trailing whitespaceMisha Brukman2005-04-221-41/+41
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21428 91177308-0d34-0410-b5e6-96231b3b80d8
* #include system headers after all LLVM headersMisha Brukman2005-04-201-2/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21374 91177308-0d34-0410-b5e6-96231b3b80d8
* Ensure that the arguments passed to sys::Program::ExecuteAndWait includeReid Spencer2005-04-111-2/+3
| | | | | | | | the program name as the first argument. Thanks go to Markus Oberhumer for noticing this problem. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21220 91177308-0d34-0410-b5e6-96231b3b80d8
* Conform to the documented interface by null terminating argument lists!Chris Lattner2005-02-131-7/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20167 91177308-0d34-0410-b5e6-96231b3b80d8
* Use Config/alloca.h instead of alloca.h - pointed out by Duraid and MishaBrian Gaeke2004-12-201-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19059 91177308-0d34-0410-b5e6-96231b3b80d8
* Make this compile on Solaris.Brian Gaeke2004-12-191-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19047 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR351:Reid Spencer2004-12-191-8/+13
| | | | | | | * Support changes in sys::Program::ExecuteAndWait interface git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19044 91177308-0d34-0410-b5e6-96231b3b80d8
* Make use of the new Path inserter function.Reid Spencer2004-12-131-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18887 91177308-0d34-0410-b5e6-96231b3b80d8
* PR351: \Reid Spencer2004-12-131-2/+3
| | | | | | | Use sys::Path not FileUtilities to check file types git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18865 91177308-0d34-0410-b5e6-96231b3b80d8
* Path::get -> Path::toStringReid Spencer2004-12-111-33/+34
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18785 91177308-0d34-0410-b5e6-96231b3b80d8
* * Don't pass empty arguments to ExecuteAndWait because it can cause theReid Spencer2004-11-231-41/+56
| | | | | | | | | | | | sub-tool to start reading its standard input instead of the specified input. * Clean up ouput of path names on error. * Extend GetPathForLinkageItem to always search the LibraryPaths and thus make it suitable for an interface function (required by llvmc.cpp). * Implement support for language-specific default library paths. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18188 91177308-0d34-0410-b5e6-96231b3b80d8
* Get the -o option rightReid Spencer2004-11-201-21/+43
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18051 91177308-0d34-0410-b5e6-96231b3b80d8
* Stop propagating method names that violate the coding standardReid Spencer2004-11-051-40/+45
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17498 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement linking.Reid Spencer2004-10-281-735/+746
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17297 91177308-0d34-0410-b5e6-96231b3b80d8
* Support the -WX, -f -M options as pass throughsReid Spencer2004-09-141-91/+184
| | | | | | | | | Change force option from -f to -F Support the -strip option Make changes to reflect different interface in sys::Program git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16325 91177308-0d34-0410-b5e6-96231b3b80d8
* Changes For Bug 352Reid Spencer2004-09-011-3/+3
| | | | | | | | | Move include/Config and include/Support into include/llvm/Config, include/llvm/ADT and include/llvm/Support. From here on out, all LLVM public header files must be under include/llvm/. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16137 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement the "setIncludePaths" and "setSymbolDefines" interface methods.Reid Spencer2004-08-301-42/+130
| | | | | | | | Revise token substitution to be a little faster. Clean up exception throwing, make sure its always a std::string. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16116 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a missing header fileReid Spencer2004-08-291-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16099 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert llvmc to use the lib/System interface instead of directlyReid Spencer2004-08-291-519/+564
| | | | | | | using Unix operating system calls. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16089 91177308-0d34-0410-b5e6-96231b3b80d8
* Run the compilation actions before we attempt linking work.Reid Spencer2004-08-241-42/+99
| | | | | | | | Correctly implement the dependent libraries feature so that linked bytecode files automatically include any dependent libraries they specify. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16042 91177308-0d34-0410-b5e6-96231b3b80d8
* - Remove unused GetSuffix functionReid Spencer2004-08-241-78/+118
| | | | | | | | | | | | | - Renamed FileReadable -> FileIsReadable - Remove support for GROKS_DASH_O; deferr it to %opts% substitution - Require a -o option except in case of linking where it defaults to a.out - Fix problem processing *.o and *.bc files. - Ignore optimization phase if -emit-raw-code - Correct the assembly generation phase to support -emit-native-code - Implement dependent library lookup git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16020 91177308-0d34-0410-b5e6-96231b3b80d8
* Change @ -> % in config files. @name@ might be needed for config files toReid Spencer2004-08-201-7/+7
| | | | | | | | themselves be configured via autoconf so its not a good substitition syntax for llvmc. Furthermore % is more llvmish :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15957 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement Assembly support.Reid Spencer2004-08-201-14/+39
| | | | | | | Consolidate platform-specific code into "sys" namespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15947 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement many new features for llvmc. This is the first version that willReid Spencer2004-08-191-132/+252
| | | | | | | actually execute actions and it is been shown to optimize a Stacker program git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15912 91177308-0d34-0410-b5e6-96231b3b80d8
* Back out dependencies on lib/System/Path.hReid Spencer2004-08-161-22/+29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15815 91177308-0d34-0410-b5e6-96231b3b80d8
* More Functionality:Reid Spencer2004-08-151-31/+163
| | | | | | | | | | | - cleaned up lexical scanner - added support for "lang.optN" configuration items - added temporary file support (ala lib/System) - corrected logic for deciding which phases to run - consolidated the Action and ActionPattern classes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15765 91177308-0d34-0410-b5e6-96231b3b80d8
* Converted to use flex for tokenizing input so we can use an easier toReid Spencer2004-08-141-12/+36
| | | | | | | | understand recursive descent parser, we can easily handle more syntax variety, and we can more easily change the configuration items accepted. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15732 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix header commentary.Reid Spencer2004-08-131-3/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15729 91177308-0d34-0410-b5e6-96231b3b80d8
* Additional functionality. This version handles option parsing and parameterReid Spencer2004-08-131-0/+227
subsitution correctly for at least .ll and .st files. There's still a long way to go (i.e. this isn't worth of review yet). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15728 91177308-0d34-0410-b5e6-96231b3b80d8