summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add .arcconfig for Arcanist support for PhabricatorAlex Rosenberg2013-01-101-0/+4
| | | | llvm-svn: 172043
* Fix commentAlex Rosenberg2013-01-101-1/+1
| | | | llvm-svn: 172042
* [ubsan] Give entry methods default (not hidden) visibility.Will Dietz2013-01-102-0/+6
| | | | | | Fixes using ubsan on shared libraries in linux, for example. llvm-svn: 172041
* support for adding linker defined symbolsShankar Easwaran2013-01-107-51/+347
| | | | llvm-svn: 172040
* <rdar://problem/11146929>Enrico Granata2013-01-102-0/+3
| | | | | | | | | | | Enabling support for the wchar_t type. Without the proper language option setup, clang's ASTContexts will be configured to have wchar_t == int This patch enables the correct options to make sure that we report wchar_t as itself Added a test case to make sure we do not regress Adding files missing from the previous commit llvm-svn: 172039
* <rdar://problem/11146929>Enrico Granata2013-01-103-0/+111
| | | | | | | | | Enabling support for the wchar_t type. Without the proper language option setup, clang's ASTContexts will be configured to have wchar_t == int This patch enables the correct options to make sure that we report wchar_t as itself Added a test case to make sure we do not regress llvm-svn: 172038
* clang-c/Index.h: Clarify empty argument with (void) for C89.NAKAMURA Takumi2013-01-101-4/+4
| | | | llvm-svn: 172037
* Be more careful about updating the failed-modules setDouglas Gregor2013-01-101-2/+3
| | | | llvm-svn: 172035
* [ObjCARC Debug Message] Added debug message when we convert an autorelease ↵Michael Gottesman2013-01-101-0/+6
| | | | | | into an autoreleaseRV. llvm-svn: 172034
* Fix a race condition in the lock-file manager: once the lock file isDouglas Gregor2013-01-102-3/+14
| | | | | | gone, check for the actual file we care about. llvm-svn: 172033
* Fix a race condition in llvm::sys::path::unique_file: when we end upDouglas Gregor2013-01-101-4/+7
| | | | | | | failing to create the unique file because the path doesn't exist, don't fail if someone else manages to create the path before we do. llvm-svn: 172032
* Don't assert in codegen on static data members which have NoLinkage. FixesNick Lewycky2013-01-102-4/+22
| | | | | | PR14825! llvm-svn: 172031
* Rework the realpath nonsense for framework lookups to deal moreDouglas Gregor2013-01-103-102/+143
| | | | | | uniformly with symlinks between top-level and embedded frameworks. llvm-svn: 172030
* Support headerless bundles in MachineInstr::hasProperty().Jakob Stoklund Olesen2013-01-102-8/+6
| | | | | | This function can still work without a BUNDLE header instruction. llvm-svn: 172029
* [Archive] Use a hash map to lookup symbols in archives. Increases ↵Michael J. Spencer2013-01-101-5/+34
| | | | | | performance of linking lua by ~6x. llvm-svn: 172028
* Stack Alignment: throw error if we can't satisfy the minimal alignmentManman Ren2013-01-106-24/+70
| | | | | | | | | | | | | | | | | | requirement when creating stack objects in MachineFrameInfo. Add CreateStackObjectWithMinAlign to throw error when the minimal alignment can't be achieved and to clamp the alignment when the preferred alignment can't be achieved. Same is true for CreateVariableSizedObject. Will not emit error in CreateSpillStackObject or CreateStackObject. As long as callers of CreateStackObject do not assume the object will be aligned at the requested alignment, we should not have miscompile since later optimizations which look at the object's alignment will have the correct information. rdar://12713765 llvm-svn: 172027
* [Object][Archive] Fix name handling with bsd style long names.Michael J. Spencer2013-01-101-8/+14
| | | | llvm-svn: 172026
* Fix include guards so they exactly match file names.Jakub Staszak2013-01-10178-371/+371
| | | | llvm-svn: 172025
* Formatter: Remove unused @-formatting code.Nico Weber2013-01-102-4/+2
| | | | | | | @optional @property is put on two different unwrapped lines now, so this is no longer necessary. llvm-svn: 172024
* Formatter: @optional and @required go on their own line.Nico Weber2013-01-104-1/+16
| | | | | | | | | | | | | | | | | | | | Previously: @protocol myProtocol - (void)mandatoryWithInt:(int)i; @optional - (void) optional; @required - (void) required; @end Now: @protocol myProtocol - (void)mandatoryWithInt:(int)i; @optional - (void)optional; @required - (void)required; @end llvm-svn: 172023
* [Object][Archive] Apparently StringRef::getAsInteger for APInt accepts spaces.Michael J. Spencer2013-01-101-2/+6
| | | | llvm-svn: 172022
* Use a more unique end delimiter. In any case, the thread names are hexified ↵Han Ming Ong2013-01-101-1/+1
| | | | | | when returning to lldb. llvm-svn: 172021
* Revert s/Raw/getBitMask/g name change. This is possibly causing LTO test ↵Bill Wendling2013-01-095-25/+28
| | | | | | hangings. llvm-svn: 172020
* Formatter: Add support for @implementation.Nico Weber2013-01-094-5/+77
| | | | | | | Just reuse the @interface code for this. It accepts slightly more than necessary (@implementation cannot have protocol lists), but that's ok. llvm-svn: 172019
* [PreprocessingRecord] A macro expansion can be reported out-of-order in ↵Argyrios Kyrtzidis2013-01-092-3/+16
| | | | | | | | | | | | cases when there are macro expansions inside macro arguments where the arguments are not expanded in the same order as listed; don't assert that all macro expansions are in source order. rdar://12397063 llvm-svn: 172018
* [utils/ClangDataFormat.py] Don't use lldb.frame directly, get the frame from ↵Argyrios Kyrtzidis2013-01-091-3/+4
| | | | | | | | | the value. Some lldb changes made lldb.frame not set until a script is invoked, which made the formatters not working after a restart. llvm-svn: 172017
* Issue warning when case value is too large to fitFariborz Jahanian2013-01-094-3/+31
| | | | | | | | | in case condition type. // rdar://11577384. Test is conditionalized on x86_64-apple triple as I am not sure if the INT_MAX/LONG_MAX values in the test will pass this test for other hosts. llvm-svn: 172016
* [Object][Archive] Use uint64_t instead of APInt. It is significantly faster.Michael J. Spencer2013-01-091-10/+10
| | | | llvm-svn: 172015
* Fixed an issue the "process plugin" proxy object was trying to use the ↵Greg Clayton2013-01-091-1/+1
| | | | | | m_exe_ctx when it wasn't ok to do so. llvm-svn: 172014
* Added emulation of shifts to the IR interpreter.Sean Callanan2013-01-093-0/+51
| | | | | | <rdar://problem/12978619> llvm-svn: 172013
* <rdar://problem/12975489>Han Ming Ong2013-01-091-6/+5
| | | | | | | 1. Using mach port number, just like when inferior is paused. 2. Use key:value pair of thread used time instead of comma separated notation. llvm-svn: 172012
* Fix description of ARMOperandJoel Jones2013-01-091-1/+1
| | | | llvm-svn: 172011
* ARM Cost model: Use the size of vector registers and widest vectorizable ↵Nadav Rotem2013-01-099-5/+153
| | | | | | instruction to determine the max vectorization factor. llvm-svn: 172010
* ClangTools.rst: spelling and formattingDmitri Gribenko2013-01-091-3/+3
| | | | llvm-svn: 172008
* ClangFormat.rst: improve formattingDmitri Gribenko2013-01-091-12/+12
| | | | llvm-svn: 172007
* Disable -Wuninitialized for gccDavid Greene2013-01-094-8/+53
| | | | | | | | | | | | | | If the compiler is gcc, disable variants of -Wuninitialized depending on the gcc version. This gets a lot of false positive warnings out of the build. Generate a new configure for the gcc -Wno-uninitialized fix. Pick up -Wno-uninitialized from configure Add the option -Wno[-maybe]-uninitialized as determined by configure. llvm-svn: 172006
* Remove the unused Parser::ParseTranslationUnit functionHal Finkel2013-01-092-19/+0
| | | | | | | Parser::ParseTranslationUnit is now dead because the loop over ParseTopLevelDecl is in ParseAST. llvm-svn: 172005
* Add documentation for clang-format.Daniel Jasper2013-01-095-13/+220
| | | | | | | | This adds documentation for both LibFormat as well as the standalone tools and integrations built on top of it. It slightly restructures the ClangTools documentation. llvm-svn: 172004
* Formatter: Make parseObjCUntilAtEnd() actually work.Nico Weber2013-01-092-0/+9
| | | | llvm-svn: 172003
* Formatting: Add support for @protocol.Nico Weber2013-01-094-17/+59
| | | | | | Pull pieces of the @interface code into reusable methods. llvm-svn: 172001
* Fix a DAG combine bug visitBRCOND() is transforming br(xor(x, y)) to br(x != y).Evan Cheng2013-01-092-12/+59
| | | | | | | | | It cahced XOR's operands before calling visitXOR() but failed to update the operands when visitXOR changed the XOR node. rdar://12968664 llvm-svn: 171999
* Simplify reversed for-loop.Daniel Jasper2013-01-091-4/+2
| | | | llvm-svn: 171998
* Style fixes.Michael J. Spencer2013-01-091-45/+39
| | | | llvm-svn: 171997
* Fix test after r171995.Nico Weber2013-01-091-1/+1
| | | | | | | I wasn't aware libFormat is used elsewhere already. Let me know if rebasing is not the right thing to do here. llvm-svn: 171996
* Formatter: Add support for @interface.Nico Weber2013-01-093-28/+140
| | | | | | | | | | | | | | Previously: @interface Foo + (id)init; @end Now: @interface Foo + (id)init; @end Some tweaking remains, but this is a good first step. llvm-svn: 171995
* Initial version of diff/patch-reformat tool.Daniel Jasper2013-01-091-0/+117
| | | | | | Use at your own risk :-). llvm-svn: 171994
* <rdar://problem/12028723>Enrico Granata2013-01-0912-93/+54
| | | | | | | | | | Adding useful formatting options to the expression (expr) command. As a side effect of this change, the -d option now supports the same three-values enumeration that frame variables uses (run, don't run, none) instead of a boolean like it did previously These options do not apply to print, p or po because these are aliased to not take any options. In order to use them, use expression or expr. llvm-svn: 171993
* Fix the elf/rodata.objtext test to work when first run.Michael J. Spencer2013-01-091-5/+7
| | | | llvm-svn: 171992
* unwind.h: Add include guards and don't mess with visibility if HIDE_EXPORTS ↵Benjamin Kramer2013-01-091-0/+9
| | | | | | | | is specified. For GCC compatibility. llvm-svn: 171991
* Expanded the flags that can be set for a command object in ↵Greg Clayton2013-01-0916-1008/+1057
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | lldb_private::CommandObject. This list of available flags are: enum { //---------------------------------------------------------------------- // eFlagRequiresTarget // // Ensures a valid target is contained in m_exe_ctx prior to executing // the command. If a target doesn't exist or is invalid, the command // will fail and CommandObject::GetInvalidTargetDescription() will be // returned as the error. CommandObject subclasses can override the // virtual function for GetInvalidTargetDescription() to provide custom // strings when needed. //---------------------------------------------------------------------- eFlagRequiresTarget = (1u << 0), //---------------------------------------------------------------------- // eFlagRequiresProcess // // Ensures a valid process is contained in m_exe_ctx prior to executing // the command. If a process doesn't exist or is invalid, the command // will fail and CommandObject::GetInvalidProcessDescription() will be // returned as the error. CommandObject subclasses can override the // virtual function for GetInvalidProcessDescription() to provide custom // strings when needed. //---------------------------------------------------------------------- eFlagRequiresProcess = (1u << 1), //---------------------------------------------------------------------- // eFlagRequiresThread // // Ensures a valid thread is contained in m_exe_ctx prior to executing // the command. If a thread doesn't exist or is invalid, the command // will fail and CommandObject::GetInvalidThreadDescription() will be // returned as the error. CommandObject subclasses can override the // virtual function for GetInvalidThreadDescription() to provide custom // strings when needed. //---------------------------------------------------------------------- eFlagRequiresThread = (1u << 2), //---------------------------------------------------------------------- // eFlagRequiresFrame // // Ensures a valid frame is contained in m_exe_ctx prior to executing // the command. If a frame doesn't exist or is invalid, the command // will fail and CommandObject::GetInvalidFrameDescription() will be // returned as the error. CommandObject subclasses can override the // virtual function for GetInvalidFrameDescription() to provide custom // strings when needed. //---------------------------------------------------------------------- eFlagRequiresFrame = (1u << 3), //---------------------------------------------------------------------- // eFlagRequiresRegContext // // Ensures a valid register context (from the selected frame if there // is a frame in m_exe_ctx, or from the selected thread from m_exe_ctx) // is availble from m_exe_ctx prior to executing the command. If a // target doesn't exist or is invalid, the command will fail and // CommandObject::GetInvalidRegContextDescription() will be returned as // the error. CommandObject subclasses can override the virtual function // for GetInvalidRegContextDescription() to provide custom strings when // needed. //---------------------------------------------------------------------- eFlagRequiresRegContext = (1u << 4), //---------------------------------------------------------------------- // eFlagTryTargetAPILock // // Attempts to acquire the target lock if a target is selected in the // command interpreter. If the command object fails to acquire the API // lock, the command will fail with an appropriate error message. //---------------------------------------------------------------------- eFlagTryTargetAPILock = (1u << 5), //---------------------------------------------------------------------- // eFlagProcessMustBeLaunched // // Verifies that there is a launched process in m_exe_ctx, if there // isn't, the command will fail with an appropriate error message. //---------------------------------------------------------------------- eFlagProcessMustBeLaunched = (1u << 6), //---------------------------------------------------------------------- // eFlagProcessMustBePaused // // Verifies that there is a paused process in m_exe_ctx, if there // isn't, the command will fail with an appropriate error message. //---------------------------------------------------------------------- eFlagProcessMustBePaused = (1u << 7) }; Now each command object contains a "ExecutionContext m_exe_ctx;" member variable that gets initialized prior to running the command. The validity of the target objects in m_exe_ctx are checked to ensure that any target/process/thread/frame/reg context that are required are valid prior to executing the command. Each command object also contains a Mutex::Locker m_api_locker which gets used if eFlagTryTargetAPILock is set. This centralizes a lot of checking code that was previously and inconsistently implemented across many commands. llvm-svn: 171990
OpenPOWER on IntegriCloud