summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/BackendUtil.cpp
Commit message (Collapse)AuthorAgeFilesLines
* wire -fbounds-checking to the new LLVM bounds checking passNuno Lopes2012-05-221-0/+14
| | | | llvm-svn: 157262
* Use enum to set debug info size generated by ClangAlexey Samsonov2012-04-271-1/+1
| | | | llvm-svn: 155697
* Wire up -fpie and -fPIE to LLVM's newly added TargetOptions. No testChandler Carruth2012-04-081-0/+1
| | | | | | | | | | | case as we don't currently have any way of dumping target options or otherwise observing this. Another small step toward fixing PR12380. With this we generate TLS accesses using the static model instead of the dynamic model, but we're still generating suboptimal code under the mistaken assumption that the TLS offset might be greater than 2^32, and therefor not viable as an immediate offset of a segment register. llvm-svn: 154298
* Fix an oversight: don't run ARC optimization cleanup at -O0.Dan Gohman2012-04-041-1/+2
| | | | llvm-svn: 154052
* use EP_OptimizerLast instead of EP_ScalarOptimizerLate for ThreadSanitizerKostya Serebryany2012-03-231-1/+1
| | | | llvm-svn: 153356
* Add a flag -fthread-sanitizer.Kostya Serebryany2012-03-011-1/+13
| | | | | | | | | | This flag enables ThreadSanitizer instrumentation committed to llvm as r150423. The patch includes one test for -fthread-sanitizer and one similar test for -faddress-sanitizer. This patch does not modify the linker flags (as we do it for -faddress-sanitizer) because the run-time library is not yet committed and it's structure in compiler-rt is not 100% clear. The users manual wil be changed in a separate commit. llvm-svn: 151846
* Allocate TargetLibraryInfo for the CodeGen passes. Otherwise, it's instantiatedChad Rosier2012-02-291-0/+6
| | | | | | | | | by the BAA pass, which uses the default TargetLibraryInfo constructor. Unfortunately, the default TargetLibraryInfo constructor assumes all library calls are available and thus ignores -fno-builtin. rdar://10947759 llvm-svn: 151745
* Prevent llvm.lifetime intrinsics from being emitted at -O0.Chad Rosier2012-02-251-1/+5
| | | | | | rdar://10921594 llvm-svn: 151430
* Make use of const-correct ParseCommandLineOptionsDavid Blaikie2012-02-071-3/+2
| | | | llvm-svn: 150000
* Reserve a moderate amount of space for the back-end arguments.Bill Wendling2012-02-071-0/+1
| | | | llvm-svn: 149973
* Fix -ftrap-function fallout from llvm r145714. <rdar://problem/10799325>Bob Wilson2012-02-031-0/+1
| | | | | | | | | That llvm change removed the -trap-func backend option, so that using -ftrap-function with clang would cause the backend to complain. Fix it by adding the trap function name to the CodeGenOptions and passing it through to the TargetOptions. llvm-svn: 149679
* Add support for -fno-optimize-sibling-calls. Currently only implemented in theNick Lewycky2012-01-231-0/+1
| | | | | | X86 backend in LLVM. llvm-svn: 148689
* Enable the new ObjC ARC autorelease pool elimination pass.Dan Gohman2012-01-171-0/+7
| | | | llvm-svn: 148331
* Per discussion on the list, remove BitcodeVerify pass to reimplement as a ↵Chad Rosier2011-12-141-3/+0
| | | | | | free function. llvm-svn: 146530
* Add frontend flags to enable bitcode verifier pass.Chad Rosier2011-12-121-0/+3
| | | | llvm-svn: 146441
* Stack realignment is a tristate. Add -mno-stackrealign to turn off all stackNick Lewycky2011-12-061-5/+2
| | | | | | realignment, even with locals with alignment exceeding the ABI guarantee. llvm-svn: 145909
* Add -mstack-alignment=X and fix -mstackrealign handling now that theJoerg Sonnenberger2011-12-051-0/+5
| | | | | | backend options are gone. llvm-svn: 145868
* Update for change to LLVM TargetMachine API in r145714.Nick Lewycky2011-12-021-34/+37
| | | | llvm-svn: 145715
* make asan work at -O0, clang part. Patch by glider@google.comKostya Serebryany2011-11-301-0/+2
| | | | llvm-svn: 145531
* implement __has_feature(address_sanitizer); also use ↵Kostya Serebryany2011-11-221-1/+1
| | | | | | LangOpts.AddressSanitizer instead of CodeGenOpts.AddressSanitizer llvm-svn: 145054
* Add -f[no-]address-sanitizer flagKostya Serebryany2011-11-161-0/+10
| | | | llvm-svn: 144800
* Match LLVM API change.Evan Cheng2011-11-161-9/+10
| | | | llvm-svn: 144789
* Turn on the new .file directive when appropriate, instead of turning it off.Nick Lewycky2011-10-311-2/+2
| | | | llvm-svn: 143327
* Wire up support for the controlling the extended dwarf .file directive. WithNick Lewycky2011-10-171-0/+2
| | | | | | | r142300 but not this patch, clang -S may emit .s files that assemblers other than llvm-mc can't parse. llvm-svn: 142301
* Rename Diagnostic to DiagnosticsEngine as per issue 5397David Blaikie2011-09-251-3/+4
| | | | llvm-svn: 140478
* [driver] Add -mglobal-merge/-mno-global-merge machine options to ↵Chad Rosier2011-08-261-0/+2
| | | | | | | | | enable/disable merging of globals during codegen. Fixes <rdar://problem/10017909>. llvm-svn: 138612
* Match LLVM change: TargetRegistry and TargetSelect have been moved to Support.Evan Cheng2011-08-241-1/+1
| | | | llvm-svn: 138451
* Update for LLVM change in PassManagerBuilder.Rafael Espindola2011-08-021-1/+5
| | | | llvm-svn: 136728
* Unbreak build after API change.Benjamin Kramer2011-07-201-6/+7
| | | | llvm-svn: 135585
* Match createTargetMachine API change.Evan Cheng2011-07-191-11/+13
| | | | llvm-svn: 135469
* Add the ObjC ARC optimization passes manually, now that they're notDan Gohman2011-07-051-3/+33
| | | | | | hardwired into the default pass list. llvm-svn: 134445
* createTargetMachine now takes a CPU string.Evan Cheng2011-06-301-3/+3
| | | | llvm-svn: 134128
* SubtargetFeature.h has been moved to MC.Evan Cheng2011-06-291-1/+1
| | | | llvm-svn: 134050
* Add support for -Wa,--noexecstack when building from a non-assembly file. ForNick Lewycky2011-06-211-0/+2
| | | | | | | an assembly file it worked correctly, while for a .c file it would given an error about how --noexecstack is not a supported argument to -Wa. llvm-svn: 133489
* Update for llvm api change.Rafael Espindola2011-05-251-1/+0
| | | | llvm-svn: 132034
* adjust to mainline api change.Chris Lattner2011-05-211-11/+9
| | | | llvm-svn: 131815
* switch clang off StandardPasses.h onto PassManagerBuilder.hChris Lattner2011-05-211-36/+30
| | | | llvm-svn: 131808
* Conditionalize the use of 4.4 or 4.2 format based on the target.Bill Wendling2011-05-171-4/+6
| | | | | | <rdar://problem/8107317> llvm-svn: 131504
* Implement -fno-dwarf2-cfi-asm.Rafael Espindola2011-04-301-0/+2
| | | | llvm-svn: 130616
* Add -Oz option and use it to set the inline threshold to 25.Bob Wilson2011-04-291-1/+3
| | | | | | Radar 9333566. Patch by Chad Rosier! llvm-svn: 130554
* Wire up the -ftest-coverage and -fprofile-arcs flags to .gcno file emission (atNick Lewycky2011-04-211-0/+8
| | | | | | | | | compile time) and .gcda emission (at runtime). --coverage enables both. This does not yet add the profile_rt library to the link step if -fprofile-arcs is enabled when linking. llvm-svn: 129956
* Added *hidden* flags -print-options and -print-all-options soAndrew Trick2011-04-051-0/+3
| | | | | | | | | | | | | | | | | | | developers can see if their driver changed any cl::Option's. The current implementation isn't perfect but handles most kinds of options. This is nice to have when decomposing the stages of compilation and moving between different drivers. It's also a good sanity check when comparing results produced by different command line invocations that are expected to produce the comparable results. Note: This is not an attempt to prolong the life of cl::Option. On the contrary, it's a placeholder for a feature that must exist when cl::Option is replaced by a more appropriate framework. A new framework needs: a central option registry, dynamic name lookup, non-global containers of option values (e.g. per-module, per-function), *and* the ability to print options values and their defaults at any point during compilation. llvm-svn: 128911
* whitespaceAndrew Trick2011-04-051-3/+3
| | | | llvm-svn: 128908
* Set AAPCS-VFP calling convention accordingly and hard float ABI command ↵Sandeep Patel2011-04-051-1/+1
| | | | | | handling. llvm-svn: 128866
* Integrated-As: Support -Wa,-L when using the integrated assembler.Daniel Dunbar2011-03-281-0/+2
| | | | llvm-svn: 128433
* Frontend: Add a more explicit -backend-option flag for passing backend commandDaniel Dunbar2011-03-221-0/+2
| | | | | | | | line options, instead of leveraging the blanket -mllvm option. - This allows using the frontend itself without requiring the backend have those options available (i.e., if the target wasn't built). llvm-svn: 128087
* If -fno-builtin is passed, tell TargetLibraryInfo toChris Lattner2011-02-181-2/+9
| | | | | | turn off all builtin optimizations. llvm-svn: 125979
* install a TargetLibraryInfo configured with the appropriate Chris Lattner2011-02-181-3/+12
| | | | | | | target triple. This would be a decent place to add -fno-builtin info for example. llvm-svn: 125971
* Implement -cl-mad-enablePeter Collingbourne2010-12-041-0/+1
| | | | llvm-svn: 120881
* Implement -cl-unsafe-math-optimizationsPeter Collingbourne2010-12-041-0/+1
| | | | llvm-svn: 120879
OpenPOWER on IntegriCloud