History log of /external/llvm/lib/VMCore/InlineAsm.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
581600bfc3060ee13afb278cd87e25da5b5f7db2 05-Sep-2012 Chad Rosier <mcrosier@apple.com> [ms-inline asm] Enumerate the InlineAsm dialects and rename the nsdialect to
inteldialect.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163231 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
03fe8f6ab6977e0a07b17b84e9b33939d2f23025 05-Sep-2012 Chad Rosier <mcrosier@apple.com> [ms-inline asm] Add the inline assembly dialect, AsmDialect, to the InlineAsm
class.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163175 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
db125cfaf57cc83e7dd7453de2d509bc8efd0e5e 18-Jul-2011 Chris Lattner <sabre@nondot.org> land David Blaikie's patch to de-constify Type, with a few tweaks.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135375 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
c1d414ad713406c67c19ff2a1db861046a51cea9 16-Jul-2011 Chris Lattner <sabre@nondot.org> deconstify getType()'s.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135323 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
1afcace3a3a138b1b18e5c6270caa8dae2261ae2 09-Jul-2011 Chris Lattner <sabre@nondot.org> Land the long talked about "type system rewrite" patch. This
patch brings numerous advantages to LLVM. One way to look at it
is through diffstat:
109 files changed, 3005 insertions(+), 5906 deletions(-)

Removing almost 3K lines of code is a good thing. Other advantages
include:

1. Value::getType() is a simple load that can be CSE'd, not a mutating
union-find operation.
2. Types a uniqued and never move once created, defining away PATypeHolder.
3. Structs can be "named" now, and their name is part of the identity that
uniques them. This means that the compiler doesn't merge them structurally
which makes the IR much less confusing.
4. Now that there is no way to get a cycle in a type graph without a named
struct type, "upreferences" go away.
5. Type refinement is completely gone, which should make LTO much MUCH faster
in some common cases with C++ code.
6. Types are now generally immutable, so we can use "Type *" instead
"const Type *" everywhere.

Downsides of this patch are that it removes some functions from the C API,
so people using those will have to upgrade to (not yet added) new API.
"LLVM 3.0" is the right time to do this.

There are still some cleanups pending after this, this patch is large enough
as-is.




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134829 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
ec281c8934a8400ad0da100cd4afd8abcb913d09 04-Jun-2011 Eric Christopher <echristo@apple.com> Another possible bug. Stopgap until we can autogenerate tables and
constraint lengths.

Part of rdar://9037836 and rdar://9119939



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132598 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
ce1ecf59c80db0ff922e599e4334258f9fa65783 03-Jun-2011 Eric Christopher <echristo@apple.com> Fix an off by one error.

Part of rdar://9037836 and rdar://9119939


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132590 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
5fab03d54cc1e624b9c9f32a66505aff388d99da 02-Jun-2011 Eric Christopher <echristo@apple.com> Add a new parse hint for multi-letter constraints in inline asm.

Testcase will come when we use it.

Part of rdar://9119939


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132476 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
1aabe1b49371f7e7a9898a3060653fcfa6ee497c 02-Nov-2010 Dale Johannesen <dalej@apple.com> Apply patch for use-after-free in InlineAsm constant handling,
PR 8522 / 8616046. Test reduction, analysis and patch by Tim Deegan!
(However, review by someone who understands the classes here better
is welcome. John Krum will return!)



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118030 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
44ab89eb376af838d1123293a79975aede501464 29-Oct-2010 John Thompson <John.Thompson.JTSoftware@gmail.com> Inline asm multiple alternative constraints development phase 2 - improved basic logic, added initial platform support.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117667 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
3ec73169a335cbdf1f836957e251f2f23a3b0b4c 13-Sep-2010 Eric Christopher <echristo@apple.com> Silence some constructor ordering warnings.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113767 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
eac6e1d0c748afc3d1496be0753ffbe5f5a4279b 13-Sep-2010 John Thompson <John.Thompson.JTSoftware@gmail.com> Added skeleton for inline asm multiple alternative constraint support.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113766 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
82d5baec32054849e760625e2413a27edfd1a9fc 26-Jul-2010 Benjamin Kramer <benny.kra@googlemail.com> Reduce string trashing.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109386 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
bf48a9b6db111fc14a8faef1adefbce5d807aaef 21-Mar-2010 Jeffrey Yasskin <jyasskin@google.com> Memoize InlineAsms into the LLVMContext and delete them on shutdown.
Fixes PR803.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99143 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
1df9859c40492511b8aa4321eb76496005d3b75b 16-Feb-2010 Duncan Sands <baldrick@free.fr> There are two ways of checking for a given type, for example isa<PointerType>(T)
and T->isPointerTy(). Convert most instances of the first form to the second form.
Requested by Chris.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96344 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
f012705c7e4ca8cf90b6b734ce1d5355daca5ba5 05-Jan-2010 Benjamin Kramer <benny.kra@googlemail.com> Avoid going through the LLVMContext for type equality where it's safe to dereference the type pointer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92726 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
2928c83b010f7cfdb0f819199d806f6942a7d995 06-Nov-2009 Daniel Dunbar <daniel@zuster.org> Pass StringRef by value.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86251 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
8ba2d5befc05ca73d3bac8708819bbbe759e2cf9 22-Oct-2009 Dale Johannesen <dalej@apple.com> Rename msasm to alignstack per review.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84795 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
4360298d2bf3c1ba8595a415cfa235df0bc76335 13-Oct-2009 Dale Johannesen <dalej@apple.com> Add an "msasm" flag to inline asm as suggested in PR 5125.
A little ugliness is accepted to keep the binary file format
compatible. No functional change yet.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84020 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
1d0be15f89cb5056e20e2d24faa8d6afb1573bca 13-Aug-2009 Owen Anderson <resistor@mac.com> Push LLVMContexts through the IntegerType APIs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78948 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
92ccf70ad448eb02f9f273d2c70ae4708b3bd0f2 25-Jul-2009 Daniel Dunbar <daniel@zuster.org> Finish migrating VMCore to StringRef/Twine based APIs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77051 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
6bdcda3d3e30003fb6cef1d4e2fd3a5d5b40d3fc 17-Oct-2008 Chris Lattner <sabre@nondot.org> Keep track of *which* input constraint matches an output
constraint. Reject asms where an output has multiple
input constraints tied to it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57687 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
ea21ad49261a6a9d1614c01e631c2cdc4d554b84 22-May-2008 Chris Lattner <sabre@nondot.org> Fix PR2267, by allowing indirect outputs to be intermixed
with normal outputs. Testcase here:
test/CodeGen/X86/asm-indirect-mem.ll


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51409 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
96bb6226462536dc0fff4b5c0250613300abb9fb 28-Apr-2008 Chris Lattner <sabre@nondot.org> Allow asms to return multiple results by value.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50328 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
4ee451de366474b9c228b4e5fa573795a715216d 29-Dec-2007 Chris Lattner <sabre@nondot.org> Remove attribution from file headers, per discussion on llvmdev.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45418 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
e395598c98b70c6c30edc192d3111f5da48b324b 18-Dec-2007 Chris Lattner <sabre@nondot.org> remove a dead annotation


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45163 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
43ad6b3e0d6ada51e9b23aab3e061187f1f5710c 17-Dec-2007 Christopher Lamb <christopher.lamb@gmail.com> Change the PointerType api for creating pointer types. The old functionality of PointerType::get() has become PointerType::getUnqual(), which returns a pointer in the generic address space. The new prototype of PointerType::get() requires both a type and an address space.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45082 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
afba8fe662d65b25b4baf46bb26cc18e1f9cc0a5 10-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Reverting dtor devirtualization patch.
_sabre_: it has a major problem: by the time ~Value is run, all of the "parts" of the derived classes have been destroyed
_sabre_: the vtable lives to fight another day

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44760 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
ed455c8fa25dd37a13b33f0afa66be03ac49b5bb 09-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Devirtualizing Value destructor (PR889). Patch by Pawel Kunio!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44747 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
73d0d0d4b8b93e8101e0a0aa283f694be341da6c 28-Apr-2007 Chris Lattner <sabre@nondot.org> represent indirect operands explicitly in inline asm strings.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36522 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
af303d53e6013417d189621c75179df6c7cbdcde 08-Jun-2006 Reid Spencer <rspencer@reidspencer.com> For PR780:
1. Add #includes to LinkAllVMCore.h to get Mangler.o and InlineAsm.o
2. Make Mangler.h and InlineAsm.h use the macros to ensure linkage
3. Make each of the tools with --load options include LinkAllVMCore.h
This should be the last set of changes for this bug and 800.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28719 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
3bdac5171bd7d661dd54cc30d9cbc55a3039c6c0 08-Jun-2006 Chris Lattner <sabre@nondot.org> Add a virtual dtor to the InlineAsm class so that the principle method of
the class can be defined in InlineAsm.cpp


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28718 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
fe3db46fe073ecaf0e1dc4b5be899e335f4e83a8 24-Feb-2006 Chris Lattner <sabre@nondot.org> Parse the %*# constraint modifiers


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26341 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
2f0eec6520f9c8bb5cf51251ae735846fc8f2522 02-Feb-2006 Chris Lattner <sabre@nondot.org> validate matching constraints and remember when we see them.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25892 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
09f0bd39b16eec73e067561c0c7546902ce97c30 01-Feb-2006 Jeff Cohen <jeffc@jolt-lang.org> Fix VC++ compilation error.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25869 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
a55079a5ccdf0cdb4d482fb47a3fb21825f56713 01-Feb-2006 Chris Lattner <sabre@nondot.org> Beef up the interface to inline asm constraint parsing, making it more general, useful, and easier to use.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25866 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
f0b415f178615714de38fb8196f49d131e54274b 26-Jan-2006 Chris Lattner <sabre@nondot.org> add method for constraint parsing


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25637 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
3b91778659ec7d515ae1354022f0213e5de64d80 26-Jan-2006 Chris Lattner <sabre@nondot.org> parse and verify the constraint string.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25631 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
80cd11561892a639a2628d19815af0695b5dbcaa 25-Jan-2006 Chris Lattner <sabre@nondot.org> Print InlineAsm objects


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25617 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
863517aea0b06770c809396be985c1c4cc50d3c4 25-Jan-2006 Chris Lattner <sabre@nondot.org> Change inline asms to be uniqued like constants, not embedded in a Module.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25610 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp
cc041ba03aed685400197fb938b7a583713d25af 24-Jan-2006 Chris Lattner <sabre@nondot.org> Initial checkin of the InlineAsm class


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25570 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/VMCore/InlineAsm.cpp