- May 03, 2013
-
-
Tobias Grosser authored
llvm-svn: 181025
-
Benjamin Kramer authored
llvm-svn: 181019
-
Richard Sandiford authored
The soon-to-be-committed SystemZ port uses 128-bit IEEE floats. MIPS64 GNU/Linux does too (albeit with unusual NaNs). llvm-svn: 181016
-
Richard Sandiford authored
Another step towards reinstating the SystemZ backend. I'll commit the configure changes separately (TARGET_HAS_JIT etc.), then commit a patch to enable the MCJIT tests on SystemZ. llvm-svn: 181015
-
Ulrich Weigand authored
[SystemZ] Support System Z as host architecture The llvm::sys::AddSignalHandler function (as well as related routines) in lib/Support/Unix/Signals.inc currently registers a signal handler routine via "sigaction". When this handler is called due to a SIGSEGV, SIGILL or similar signal, it will show a stack backtrace, deactivate the handler, and then simply return to the operating system. The intent is that the OS will now retry execution at the same location as before, which ought to again trigger the same error condition and cause the same signal to be delivered again. Since the hander is now deactivated, the OS will take its default action (usually, terminate the program and possibly create a core dump). However, this method doesn't work reliably on System Z: With certain signals (namely SIGILL, SIGFPE, and SIGTRAP), the program counter stored by the kernel on the signal stack frame (which is the location where execution will resume) is not the instruction that triggered the fault, but then instruction *after it*. When the LLVM signal handler simply returns to the kernel, execution will then resume at *that* address, which will not trigger the problem again, but simply go on and execute potentially unrelated code leading to random errors afterwards. To fix this, the patch simply goes and re-raises the signal in question directly from the handler instead of returning from it. This is done only on System Z and only for those signals that have this particular problem. llvm-svn: 181010
-
Amara Emerson authored
Build attribute sections can now be read if they exist via ELFObjectFile, and the llvm-readobj tool has been extended with an option to dump this information if requested. Regression tests are also included which exercise these features. Also update the docs with a fixed ARM ABI link and a new link to the Addenda which provides the build attributes specification. llvm-svn: 181009
-
Richard Sandiford authored
Another step towards reinstating the SystemZ backend. Tests will be included in the main backend patch. llvm-svn: 181008
-
Richard Sandiford authored
First step towards reinstating the SystemZ backend. Tests will be included in the main backend patch. llvm-svn: 181007
-
Benjamin Kramer authored
llvm-svn: 181005
-
Pekka Jaaskelainen authored
llvm-svn: 181001
-
Aaron Ballman authored
llvm-svn: 180992
-
Aaron Ballman authored
llvm-svn: 180991
-
Akira Hatanaka authored
llvm-svn: 180988
-
Reid Kleckner authored
llvm-svn: 180983
-
John McCall authored
the "identifier" parsed by the frontend callback by skipping forward until we've consumed a token that ends at the point dictated by the callback. In addition, inform the callback when it's parsing an unevaluated operand (e.g. mov eax, LENGTH A::x) as opposed to an evaluated one (e.g. mov eax, [A::x]). This commit depends on a clang commit. llvm-svn: 180978
-
Akira Hatanaka authored
register. - Define pseudo instructions which store or load ccond field of the DSP control register. - Emit the pseudos in MipsSEInstrInfo::storeRegToStack and loadRegFromStack. - Expand the pseudos before callee-scan save. - Emit instructions RDDSP or WRDSP to copy between ccond field and GPRs. llvm-svn: 180969
-
Bill Wendling authored
llvm-svn: 180967
-
Jyotsna Verma authored
llvm-svn: 180964
-
- May 02, 2013
-
-
Vincent Lejeune authored
llvm-svn: 180960
-
Vincent Lejeune authored
llvm-svn: 180959
-
Vincent Lejeune authored
llvm-svn: 180958
-
Vincent Lejeune authored
llvm-svn: 180957
-
Vincent Lejeune authored
llvm-svn: 180956
-
Jyotsna Verma authored
llvm-svn: 180953
-
Shuxin Yang authored
Actually it took me couple of hours trying to make sense of them and only to find they are dead code. I guess the original author used "allSingleSucc" to indicate if there are any critial edge emanating from some blocks, and tried to perform code motion (actually speculation) in the presence of these critical edges; but later on he/she changed mind and decided to perform edge-splitting first. llvm-svn: 180951
-
Bill Wendling authored
llvm-svn: 180949
-
Aaron Ballman authored
llvm-svn: 180947
-
Pranav Bhandarkar authored
* lib/Target/Hexagon/HexagonInstrInfo.td: Add patterns to combine a sequence of a pair of i32->i64 extensions followed by a "bitwise or" into COMBINE_rr. * lib/Target/Hexagon/HexagonPeephole.cpp: Copy propagate Rx in the instruction Rp = COMBINE_Ir_V4(0, Rx) to the uses of Rp:subreg_loreg. * test/CodeGen/Hexagon/union-1.ll: New test. * test/CodeGen/Hexagon/combine_ir.ll: Fix test. llvm-svn: 180946
-
Richard Sandiford authored
...aka a test commit. llvm-svn: 180936
-
Manman Ren authored
This will make it easier to turn on struct-path aware TBAA since the metadata format will change. llvm-svn: 180935
-
Adrian Prantl authored
to emitted instructions. Use this if you want an instruction to be counted towards the prologue or if there is no useful source location. rdar://problem/13442648 llvm-svn: 180929
-
Jyotsna Verma authored
* lib/Target/Hexagon/HexagonInstrInfo.cpp (GetDotNewPredOp): Given a jump opcode return the right pred.new jump opcode with a taken vs not-taken hint based on branch probabilities provided by the target independent module. * lib/Target/Hexagon/HexagonVLIWPacketizer.cpp: Use the above function. * lib/Target/Hexagon/HexagonNewValueJump.cpp(getNewvalueJumpOpcode): Enhance existing function use branch probabilities like HexagonInstrInfo::GetDotNewPredOp but for New Value (GPR) Jumps. llvm-svn: 180923
-
Tom Stellard authored
All but two patterns have been converted to the new syntax. The remaining two patterns will require COPY_TO_REGCLASS instructions, which the VLIW DAG Scheduler cannot handle. llvm-svn: 180922
-
Tom Stellard authored
Fortunately this pattern never matched, otherwise we would have generated incorrect code. Signed-off-by:
Christian K??nig <christian.koenig@amd.com> llvm-svn: 180921
-
Tobias Grosser authored
Contributed-by:
Dan Liew <daniel.liew@imperial.ac.uk> llvm-svn: 180919
-
Michael Liao authored
llvm-svn: 180915
-
Michael Liao authored
No functionality change llvm-svn: 180914
-
Michael Liao authored
No functionality change llvm-svn: 180912
-
Michael Liao authored
llvm-svn: 180910
-
David Majnemer authored
This tests a case where C1 and C2 were the same but X and Y were different widths. llvm-svn: 180907
-