summaryrefslogtreecommitdiffstats
path: root/compiler-rt/lib/ubsan/ubsan_value.cc
Commit message (Collapse)AuthorAgeFilesLines
* Update the file headers across all of the LLVM projects in the monorepoChandler Carruth2019-01-191-4/+3
| | | | | | | | | | | | | | | | | to reflect the new license. We understand that people may be surprised that we're moving the header entirely to discuss the new license. We checked this carefully with the Foundation's lawyer and we believe this is the correct approach. Essentially, all code in the project is now made available by the LLVM project under our new license, so you will see that the license headers include that license only. Some of our contributors have contributed code under our old license, and accordingly, we have retained a copy of our old license notice in the top-level files in each project and repository. llvm-svn: 351636
* Fix bad regression from r263077 when building with MSVC.Nico Weber2016-03-121-2/+2
| | | | | | | | | | | | | | That change did: -#if defined(__BIG_ENDIAN__) +#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ If __BYTE_ORDER__ and __ORDER_BIG_ENDIAN__ aren't defined, like they are with MSVC, this condition is true (0 == 0). Fixes PR26919. llvm-svn: 263324
* sanitizer: Fix endianness checks for gccAlexey Samsonov2016-03-091-1/+1
| | | | | | | | | | | | | | | | | Summary: __BIG_ENDIAN__ and __LITTLE_ENDIAN__ are not supported by gcc, which eg. for ubsan Value::getFloatValue will silently fall through to the little endian branch, breaking display of float values by ubsan. Use __BYTE_ORDER__ == __ORDER_BIG/LITTLE_ENDIAN__ as the condition instead, which is supported by both clang and gcc. Noticed while porting ubsan to s390x. Patch by Marcin Kościelnicki! Differential Revision: http://reviews.llvm.org/D17660 llvm-svn: 263077
* [ubsan][mips] Revise r243384 to avoid special casing big-endian mips.Daniel Sanders2015-08-111-4/+5
| | | | | | | Account for the case when uptr is 32-bit instead of trying to fix this case using the little endian path. llvm-svn: 244646
* [UBSan][MIPS] Fix cast-overflow tests for mips big endianSagar Thakur2015-07-281-1/+1
| | | | | | | | | | This fixes the bug https://llvm.org/bugs/show_bug.cgi?id=24152 The float value resides in the first 4 bytes of ValueHandle for both mips and mipsel. Reviewers: dsanders, samsonov Subscibers: rsmith, hans, mohit.bhakkad, jaydeep, llvm-commits Differential: http://reviews.llvm.org/D11448 llvm-svn: 243384
* [PPC64]This activates UBSan for the power architecture.Bill Seurer2015-04-011-1/+7
| | | | | | | | One test case is updated to allow for differences between power and other architectures in behavior when returning from main in certain instances http://reviews.llvm.org/D8743 llvm-svn: 233813
* [UBSan] Explicitly list all supported OS/arch pairs supported by UBSan.Alexey Samsonov2015-03-261-0/+4
| | | | llvm-svn: 233295
* [ubsan] handle long double in 32-bit mode; part of the patch by Marek PolacekKostya Serebryany2014-05-231-0/+1
| | | | llvm-svn: 209516
* ubsan: Pass floating-point arguments to the runtime by value if they fit theRichard Smith2013-03-221-8/+28
| | | | | | value argument. llvm-svn: 177689
* Provide a slightly more helpful diagnostic if -fcatch-undefined-behavior findsRichard Smith2012-10-141-0/+6
| | | | | | | a problem with __int128 arithmetic but the runtime was not built with __int128 support. llvm-svn: 165913
* Fix the bootstrap of CompilerRT with host compilers that don't supportChandler Carruth2012-10-131-2/+2
| | | | | | | | | emulating 128-bit arithmetic on 32-bit x86 targets. This should get the bootstrap back for GCC 4.6 at least. Suggestions on better ways to do the detection here are welcome... llvm-svn: 165863
* -fcatch-undefined-behavior: Runtime library support for trapping conversions ↵Richard Smith2012-10-121-1/+1
| | | | | | | | | to or from a floating-point type where the source value is not in the range of representable values of the destination type. llvm-svn: 165844
* Add a runtime diagnostics library for Clang's -fcatch-undefined-behavior.Richard Smith2012-10-091-0/+75
llvm-svn: 165533
OpenPOWER on IntegriCloud