- Jan 20, 2011
-
-
Evan Cheng authored
TargetInstrInfo: Change produceSameValue() to take MachineRegisterInfo as an optional argument. When in SSA form, targets can use it to make more aggressive equality analysis. Machine LICM: 1. Eliminate isLoadFromConstantMemory, use MI.isInvariantLoad instead. 2. Fix a bug which prevent CSE of instructions which are not re-materializable. 3. Use improved form of produceSameValue. ARM: 1. Teach ARM produceSameValue to look pass some PIC labels. 2. Look for operands from different loads of different constant pool entries which have same values. 3. Re-implement PIC GA materialization using movw + movt. Combine the pair with a "add pc" or "ldr [pc]" to form pseudo instructions. This makes it possible to re-materialize the instruction, allow machine LICM to hoist the set of instructions out of the loop and make it possible to CSE them. It's a bit hacky, but it significantly improve code quality. 4. Some minor bug fixes as well. With the fixes, using movw + movt to materialize GAs significantly outperform the load from constantpool method. 186.crafty and 255.vortex improved > 20%, 254.gap and 176.gcc ~10%. llvm-svn: 123905
-
John McCall authored
Part of the fix for PR8413. llvm-svn: 123904
-
Greg Clayton authored
while the inferior is running) to be fast. The previous code would always cause the sender to timeout, yet still return success due to the way we were waiting for a value (incorrect value) to change. Now the ProcessGDBRemote plug-in has a public and private "is running" predicate. This allows things that need to send async packets to interrupt and wait for the private "is running" state to be flipped to false, and then resume quickly with no timeout. llvm-svn: 123903
-
Michael J. Spencer authored
llvm-svn: 123902
-
Michael J. Spencer authored
llvm-svn: 123901
-
Anders Carlsson authored
When instantiating member functions, propagate whether the member function is marked 'final' and 'override'. Also, call CheckOverrideControl when instantiating member functions. llvm-svn: 123900
-
Michael J. Spencer authored
llvm-svn: 123899
-
Michael J. Spencer authored
llvm-svn: 123898
-
Michael J. Spencer authored
llvm-svn: 123897
-
Michael J. Spencer authored
llvm-svn: 123896
-
Michael J. Spencer authored
llvm-svn: 123895
-
Anders Carlsson authored
llvm-svn: 123894
-
Anders Carlsson authored
llvm-svn: 123893
-
Andrew Trick authored
Added a check for already live regs before claiming HighRegPressure. Fixed a few cases of checking the wrong number of successors. Added some tracing until these heuristics are better understood. llvm-svn: 123892
-
Jakob Stoklund Olesen authored
The live range may have been deleted earlier because of rematerialization. llvm-svn: 123891
-
Jakob Stoklund Olesen authored
register coalescing. llvm-svn: 123890
-
Greg Clayton authored
going to actually be used as the symbol file plug-in by looking only for suitable N_OSO symbols and avoiding sorting function (N_FUN) and global/static (N_GSYM/N_STSYM) symbols when there are no suitable N_OSO objects. llvm-svn: 123889
-
Anders Carlsson authored
llvm-svn: 123888
-
Anders Carlsson authored
llvm-svn: 123887
-
Michael J. Spencer authored
llvm-svn: 123886
-
Anders Carlsson authored
llvm-svn: 123885
-
Venkatraman Govindaraju authored
with useful instructions. llvm-svn: 123884
-
Anders Carlsson authored
llvm-svn: 123883
-
Anders Carlsson authored
llvm-svn: 123882
-
Greg Clayton authored
changes that recently happened. llvm-svn: 123881
-
Anders Carlsson authored
llvm-svn: 123880
-
Cameron Zwarich authored
llvm-svn: 123879
-
Anders Carlsson authored
llvm-svn: 123878
-
Cameron Zwarich authored
llvm-svn: 123877
-
Anders Carlsson authored
llvm-svn: 123876
-
Anders Carlsson authored
llvm-svn: 123875
-
Rafael Espindola authored
llvm-svn: 123873
-
Jakob Stoklund Olesen authored
llvm-svn: 123872
-
Rafael Espindola authored
failed to find a case where an enum context would make a difference, but found PR9007 on the way. llvm-svn: 123871
-
Jim Ingham authored
Set the thread state to "bland" before calling functions so they don't inherit the pending signals and die. llvm-svn: 123869
-
Ken Dyck authored
llvm-svn: 123868
-
Douglas Gregor authored
declaration that name lookup actually found, so that we can use it for access checking later on. Fixes <rdar://problem/8876150>. llvm-svn: 123867
-
Eric Christopher authored
llvm-svn: 123866
-
Eric Christopher authored
with an invalid type then split the result and perform the overflow check normally. Fixes the 32-bit parts of rdar://8622122 and rdar://8774702. llvm-svn: 123864
-
Douglas Gregor authored
so allow it to propagate the failure outward. Fixes the crashing part of <rdar://problem/8876150>. llvm-svn: 123863
-