Commit Graph

87569 Commits

Author SHA1 Message Date
Bruno Cardoso Lopes cdbec62510 Add AVX only vzeroall and vzeroupper instructions
llvm-svn: 109002
2010-07-21 08:56:24 +00:00
Gabor Greif f97f626730 restore aesthetics
llvm-svn: 109001
2010-07-21 08:25:55 +00:00
John McCall cda666ccd8 Rename LazyCleanup -> Cleanup. No functionality change for these last three
commits.

llvm-svn: 109000
2010-07-21 07:22:38 +00:00
John McCall 20141f2d8c Rip out EHCleanupScope.
llvm-svn: 108999
2010-07-21 07:11:21 +00:00
John McCall 7535ee0352 Kill the CleanupBlock API.
llvm-svn: 108998
2010-07-21 07:04:01 +00:00
John McCall 65bea08879 Switch the fragile-ABI @finally/@synchronized cleanup over to using a lazy
cleanup.

llvm-svn: 108997
2010-07-21 06:59:36 +00:00
John McCall 0d42a41a63 Code simplification.
llvm-svn: 108996
2010-07-21 06:45:54 +00:00
John McCall fb442ae7b9 Switch the main possibly-conditional temporary cleanup over to being lazy.
llvm-svn: 108995
2010-07-21 06:44:28 +00:00
John McCall 8680f87d99 Switch the destructor for a temporary arising from a reference binding over to
using a lazy cleanup.

llvm-svn: 108994
2010-07-21 06:29:51 +00:00
John McCall da650e091f Switch the __cxa_guard_abort cleanup to being a lazy cleanup.
llvm-svn: 108993
2010-07-21 06:20:50 +00:00
John McCall a464ff9d15 Switch some random local-decl cleanups over to using lazy cleanups. Turn on
the block-release unwind cleanup:  we're never going to test it if we don't turn
it on.

llvm-svn: 108992
2010-07-21 06:13:08 +00:00
Evan Cheng a77f3d3b37 Teach bottom up pre-ra scheduler to track register pressure. Work in progress.
llvm-svn: 108991
2010-07-21 06:09:07 +00:00
John McCall 906da4bb52 Switch finally cleanups over to being lazy cleanups. We get basically nothing
from the laziness features here except better block ordering, but it removes yet
another CleanupBlock use.

llvm-svn: 108990
2010-07-21 05:47:49 +00:00
John McCall f99a631e4e Implement proper base/member destructor EH chaining.
llvm-svn: 108989
2010-07-21 05:30:47 +00:00
Zhongxing Xu 2e01b80356 Move some methods inline.
llvm-svn: 108988
2010-07-21 05:21:41 +00:00
Eric Christopher 690aa72437 Turn this test on again after the llvm-gcc change in r108986.
llvm-svn: 108987
2010-07-21 04:54:06 +00:00
Eric Christopher 8d95d26eb1 Update this to use a "valid" alignment.
llvm-svn: 108985
2010-07-21 04:51:24 +00:00
Bruno Cardoso Lopes 3499934da6 Add new AVX vpermilps, vpermilpd and vperm2f128 instructions
llvm-svn: 108984
2010-07-21 03:07:42 +00:00
Bruno Cardoso Lopes 3ceaf7a0a2 Add new AVX vmaskmov instructions, and also fix the VEX encoding bits to support it
llvm-svn: 108983
2010-07-21 02:46:58 +00:00
Nate Begeman 6e8865a150 Fix win64 compilation of constants like 0xFFFFFFFFFFFFFFFFULL
intmax_t is __int64 (long long to clang), per VS 2010 stdint.h

llvm-svn: 108980
2010-07-21 02:02:56 +00:00
John McCall 53cad2ef04 Change PushDestructorCleanup to use lazy cleanups.
llvm-svn: 108979
2010-07-21 01:41:18 +00:00
John McCall 1d9875654f Convert the EH cleanups for base and member destructors in a constructor into
lazy cleanups.

llvm-svn: 108978
2010-07-21 01:23:41 +00:00
Douglas Gregor 05fc5be32f Implement zero-initialization for array new when there is an
initializer of (). Make sure to use a simple memset() when we can, or
fall back to generating a loop when a simple memset will not
suffice. Fixes <rdar://problem/8212208>, a regression due to my work
in r107857.

llvm-svn: 108977
2010-07-21 01:10:17 +00:00
Greg Clayton a0e7f0c1b1 Avoid std::bitset<64>::to_string() since it is missing in earlier C++
libraries (from William Lynch).

llvm-svn: 108976
2010-07-21 01:08:41 +00:00
John McCall 1e67040fb7 Convert the end-catch call for finally blocks to a lazy cleanup. This kills off
the last of the shared-code cleanups.

llvm-svn: 108975
2010-07-21 00:52:03 +00:00
Sebastian Redl c713b9665b Allow loading identifiers from any file in the chain. WIP
llvm-svn: 108974
2010-07-21 00:46:22 +00:00
John McCall c20acd31f7 Convert the ObjC @synchronized cleanups to laziness. This is not actually
a big deal, except that I want to eliminate the shared-code EH cleanups
in preparation for a significant algorithmic fix.

llvm-svn: 108973
2010-07-21 00:41:47 +00:00
John McCall 8f51041184 Add a little helper method which will be useful soon.
llvm-svn: 108972
2010-07-21 00:40:03 +00:00
Dan Gohman a2489d1bb6 Give MDNode printing has access to the current Module in more
cases. This will be needed when function-local metadata can
appear in places that aren't intrinsic function arguments.

llvm-svn: 108971
2010-07-20 23:55:01 +00:00
Sean Callanan b3706e6dd2 Whoops, forgot to guard ASTType.h. Fixed.
llvm-svn: 108970
2010-07-20 23:53:01 +00:00
Jakob Stoklund Olesen 0fef9dda8e Change the createSpiller interface to take a MachineFunctionPass argument.
The spillers can pluck the analyses they need from the pass reference.

Switch some never-null pointers to references.

llvm-svn: 108969
2010-07-20 23:50:15 +00:00
Dan Gohman afbe4a7a10 Make this code a little more readable.
llvm-svn: 108968
2010-07-20 23:49:44 +00:00
Dan Gohman 7373bd9973 Use DebugLocs instead of MDNodes.
llvm-svn: 108967
2010-07-20 23:49:05 +00:00
Owen Anderson 7fc9fe7553 Move the handling of PassRegistrationListener's to PassRegistry.
llvm-svn: 108966
2010-07-20 23:41:56 +00:00
Sean Callanan 1d18066411 Added functionality to dematerialize values that were
used by the JIT compiled expression, including the
result of the expression.

Also added a new class, ASTType, which encapsulates an
opaque Clang type and its associated AST context.

Refactored ClangExpressionDeclMap to use ASTTypes,
significantly reducing the possibility of mixups of
types from different AST contexts.

llvm-svn: 108965
2010-07-20 23:31:16 +00:00
Bruno Cardoso Lopes e706501975 Add new AVX vextractf128 instructions
llvm-svn: 108964
2010-07-20 23:19:02 +00:00
Dan Gohman b22dd85bb3 Fix a typo.
llvm-svn: 108962
2010-07-20 23:10:36 +00:00
Dan Gohman 5c2e65b7bf Don't look up the "dbg" metadata kind by name.
llvm-svn: 108961
2010-07-20 23:09:34 +00:00
Sebastian Redl b2831dbff7 Apparently not every system thinks that references in pairs are as cool as I think.
llvm-svn: 108959
2010-07-20 22:55:31 +00:00
Greg Clayton ede0585ec2 Fixing a crashing bug in multiword commands from William Lynch.
llvm-svn: 108958
2010-07-20 22:54:09 +00:00
Greg Clayton 471b31ce62 Remove use of STL collection class use of the "data()" method since it isn't
part of C++'98. Most of these were "std::vector<T>::data()" and 
"std::string::data()".

llvm-svn: 108957
2010-07-20 22:52:08 +00:00
Sebastian Redl 3462779369 Allow loading declarations from any file in the chain. WIP
llvm-svn: 108956
2010-07-20 22:46:15 +00:00
Chris Lattner 41ff5d4d91 make asmprinter optional, even though passing in null will cause things to explode right now.
llvm-svn: 108955
2010-07-20 22:45:33 +00:00
Sebastian Redl 837a6cbe03 Allow loading types from any file in the chain. WIP
llvm-svn: 108954
2010-07-20 22:37:49 +00:00
Greg Clayton da9220bbef Added support to MachO.h for many defines and structures that are needed
to Parse mach-o files. All defines have been renamed to not conflict with
#defines in mach header files, all structures were left named the same but
are in the llvm::MachO namespace.

llvm-svn: 108953
2010-07-20 22:36:00 +00:00
Chris Lattner b4dc58975b continue pushing dependencies around.
llvm-svn: 108952
2010-07-20 22:35:40 +00:00
Devang Patel 0043977f09 Remove unintended code that was checked in as part of r108916.
llvm-svn: 108951
2010-07-20 22:32:37 +00:00
Chris Lattner 2366d95af9 reduce X86MCInstLower dependencies on asmprinter.
llvm-svn: 108950
2010-07-20 22:30:53 +00:00
Chris Lattner 7fbdd7c852 pass around MF, not MMI.
llvm-svn: 108949
2010-07-20 22:26:07 +00:00
Dan Gohman 48a995f7e9 Rename removeAllMetadata to clearMetadataHashEntries and simplify
it to just do the things that need to be done when an instruction
is deleted.

llvm-svn: 108948
2010-07-20 22:25:04 +00:00