| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | Make sure that Cygwin assembly includes _ as part of function names. | Reid Spencer | 2005-06-02 | 1 | -0/+9 | |
| | | | | | llvm-svn: 22190 | |||||
| * | try custom expanders, doesn't seem to expand yet, so disabled | Andrew Lenharth | 2005-05-31 | 1 | -0/+61 | |
| | | | | | llvm-svn: 22188 | |||||
| * | switch to the new live in thing. Really, this time it works | Andrew Lenharth | 2005-05-31 | 1 | -1/+1 | |
| | | | | | llvm-svn: 22187 | |||||
| * | switch to the new live in thing | Andrew Lenharth | 2005-05-31 | 1 | -2/+2 | |
| | | | | | llvm-svn: 22186 | |||||
| * | switch to the new live in thing | Andrew Lenharth | 2005-05-31 | 1 | -65/+60 | |
| | | | | | llvm-svn: 22185 | |||||
| * | match gcc, makes diff easier | Andrew Lenharth | 2005-05-27 | 1 | -2/+2 | |
| | | | | | llvm-svn: 22179 | |||||
| * | Fix 2005-05-12-Int64ToFP | Andrew Lenharth | 2005-05-26 | 1 | -0/+26 | |
| | | | | | | | | | | The issue is there is no unsigned -> double conversion, only signed. So I need to test the sign and do a different thing depending on it. Ideally this should be in a different BB, but in the mean time, I use a branch free method. llvm-svn: 22177 | |||||
| * | C'mon everybody, let's modify X86JITInfo.cpp. This time, we add <iostream> | Nate Begeman | 2005-05-20 | 1 | -1/+2 | |
| | | | | | | | so that the shiny new use of std::cerr is defined. llvm-svn: 22156 | |||||
| * | Since everyone else has "fixed" this file, might as well join in the fun. | Misha Brukman | 2005-05-20 | 1 | -4/+3 | |
| | | | | | | | | * Change assert() to std::cerr printout, as it will not appear in opt builds * Add comments to clarify what #ifdef/#else/#endif match what condition(s) llvm-svn: 22154 | |||||
| * | Fix this a 3rd time :) | Chris Lattner | 2005-05-20 | 1 | -1/+2 | |
| | | | | | llvm-svn: 22151 | |||||
| * | fix compilation error due to no abort being defined. There is probably a ↵ | Andrew Lenharth | 2005-05-20 | 1 | -0/+1 | |
| | | | | | | | better way to do this llvm-svn: 22150 | |||||
| * | re-enable direct calls, this should just be a performance boost | Duraid Madina | 2005-05-20 | 1 | -6/+5 | |
| | | | | | llvm-svn: 22148 | |||||
| * | this seems dead (and broke the ia64 build, so..) | Duraid Madina | 2005-05-20 | 1 | -1/+0 | |
| | | | | | llvm-svn: 22147 | |||||
| * | Fix tail call support in VC++ builds | Jeff Cohen | 2005-05-20 | 1 | -38/+45 | |
| | | | | | llvm-svn: 22143 | |||||
| * | Fastcc passes arguments in EAX and EDX, make sure the JIT doesn't clobber them | Chris Lattner | 2005-05-19 | 1 | -6/+39 | |
| | | | | | llvm-svn: 22137 | |||||
| * | Tailcalls require stubs to be emitted. Otherwise, the compilation callback | Chris Lattner | 2005-05-19 | 2 | -9/+16 | |
| | | | | | | | doesn't know who 'called' it. llvm-svn: 22136 | |||||
| * | Wrap long lines | Misha Brukman | 2005-05-18 | 1 | -5/+14 | |
| | | | | | llvm-svn: 22125 | |||||
| * | PPC "branch and link" instructions are branches in the PPC sense, but not | Chris Lattner | 2005-05-15 | 1 | -1/+1 | |
| | | | | | | | | in the LLVM code generator sense (they are calls). Don't mark them as such, which fixes the regressions on the ppc tester last night llvm-svn: 22065 | |||||
| * | Fix andrews changes to fit in 80 columns | Chris Lattner | 2005-05-15 | 2 | -15/+30 | |
| | | | | | llvm-svn: 22064 | |||||
| * | make angry compilers happy again | Duraid Madina | 2005-05-15 | 1 | -1/+2 | |
| | | | | | llvm-svn: 22054 | |||||
| * | don't reserve space for tailcall arg areas. It explicitly managed. | Chris Lattner | 2005-05-15 | 1 | -2/+4 | |
| | | | | | llvm-svn: 22050 | |||||
| * | Teach reginfo how to deal with ADJSTACKPTRri, allowing us to generate: | Chris Lattner | 2005-05-15 | 1 | -0/+3 | |
| | | | | | | | | | | | | | add %ESP, 20 jmp %EDX # TAIL CALL instead of: add %ESP, -8 add %ESP, 28 jmp %EDX # TAIL CALL llvm-svn: 22047 | |||||
| * | Implement proper tail calls in the X86 backend for all fastcc->fastcc | Chris Lattner | 2005-05-15 | 1 | -10/+295 | |
| | | | | | | | tail calls. llvm-svn: 22046 | |||||
| * | Add markers in the asm file for tail calls, add a new ADJSTACKPTRri | Chris Lattner | 2005-05-15 | 1 | -4/+14 | |
| | | | | | | | sorta-pseudo-instruction llvm-svn: 22042 | |||||
| * | Yes, calltarget is the operand of the day. | Chris Lattner | 2005-05-15 | 1 | -2/+1 | |
| | | | | | llvm-svn: 22040 | |||||
| * | When emitting the function epilog, check to see if there already a stack | Chris Lattner | 2005-05-14 | 1 | -8/+23 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | adjustment. If so, we merge the adjustment into the existing one. This allows us to generate: caller2: sub %ESP, 12 mov DWORD PTR [%ESP], 0 mov %EAX, 1234567890 mov %EDX, 0 call func2 add %ESP, 8 ret 4 intead of: caller2: sub %ESP, 12 mov DWORD PTR [%ESP], 0 mov %EAX, 1234567890 mov %EDX, 0 call func2 sub %ESP, 4 add %ESP, 12 ret 4 for X86/fast-cc-merge-stack-adj.ll llvm-svn: 22038 | |||||
| * | Add some new instructions | Chris Lattner | 2005-05-14 | 2 | -2/+17 | |
| | | | | | llvm-svn: 22036 | |||||
| * | Pass i64 values correctly split in reg/mem to fastcc calls. | Chris Lattner | 2005-05-14 | 1 | -2/+1 | |
| | | | | | | | This fixes fourinarow with -enable-x86-fastcc. llvm-svn: 22022 | |||||
| * | Use target-specific nodes for calls. This allows the fastcc code to not have | Chris Lattner | 2005-05-14 | 1 | -105/+182 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | to do ugly hackery to avoid emitting code like this: call foo mov vreg, EAX adjcallstackup ... If foo is a fastcc call and if vreg gets spilled, we might end up with this: call foo mov [ESP+offset], EAX ;; Offset doesn't consider the 12! sub ESP, 12 Which is bad. The previous hacky code to deal with this was A) gross B) not good enough. In particular, it could miss cases and emit the bad code above. Now we always emit this: call foo adjcallstackup ... mov vreg, EAX directly. This makes fastcc with callees poping the stack work much better. Next stop (finally!) really is tail calls. llvm-svn: 22021 | |||||
| * | use a target-specific node and custom expander to lower long->FP to FILD64m. | Chris Lattner | 2005-05-14 | 1 | -0/+74 | |
| | | | | | | | | This should fix some missing symbols problems on BSD and improve performance of programs that use that operation. llvm-svn: 22012 | |||||
| * | Make sure the start of the arg area and the end (after the RA is pushed) | Chris Lattner | 2005-05-13 | 1 | -2/+22 | |
| | | | | | | | is always 8-byte aligned for fastcc llvm-svn: 21995 | |||||
| * | fix typo | Chris Lattner | 2005-05-13 | 1 | -3/+3 | |
| | | | | | llvm-svn: 21991 | |||||
| * | Fix the problems with callee popped argument lists | Chris Lattner | 2005-05-13 | 1 | -1/+37 | |
| | | | | | llvm-svn: 21988 | |||||
| * | Don't emit SAR X, 0 in the case of sdiv Y, 2 | Chris Lattner | 2005-05-13 | 1 | -2/+7 | |
| | | | | | llvm-svn: 21986 | |||||
| * | Fix UnitTests/2005-05-13-SDivTwo.c | Chris Lattner | 2005-05-13 | 2 | -3/+4 | |
| | | | | | llvm-svn: 21985 | |||||
| * | switch to having the callee pop stack operands for fastcc. This is ↵ | Chris Lattner | 2005-05-13 | 3 | -16/+43 | |
| | | | | | | | | | currently buggy do not use llvm-svn: 21984 | |||||
| * | allow RETI | Chris Lattner | 2005-05-13 | 1 | -1/+1 | |
| | | | | | llvm-svn: 21980 | |||||
| * | treat TAILCALL nodes identically to CALL nodes | Chris Lattner | 2005-05-13 | 4 | -4/+14 | |
| | | | | | llvm-svn: 21977 | |||||
| * | Build TAILCALL nodes in LowerCallTo, treat them like normal calls everywhere. | Chris Lattner | 2005-05-13 | 1 | -8/+14 | |
| | | | | | llvm-svn: 21976 | |||||
| * | capitalize | Chris Lattner | 2005-05-13 | 1 | -1/+1 | |
| | | | | | llvm-svn: 21962 | |||||
| * | clarify that these are v9 options | Chris Lattner | 2005-05-13 | 1 | -3/+3 | |
| | | | | | llvm-svn: 21960 | |||||
| * | hide this option | Chris Lattner | 2005-05-13 | 2 | -2/+2 | |
| | | | | | llvm-svn: 21959 | |||||
| * | Add an isTailCall flag to LowerCallTo | Chris Lattner | 2005-05-13 | 5 | -11/+21 | |
| | | | | | llvm-svn: 21958 | |||||
| * | add 'ret imm' instruction | Chris Lattner | 2005-05-13 | 1 | -1/+3 | |
| | | | | | llvm-svn: 21945 | |||||
| * | Realize that we don't support fmod directly, fixing ↵ | Chris Lattner | 2005-05-13 | 2 | -2/+6 | |
| | | | | | | | CodeGen/Generic/print-arith-fp.ll llvm-svn: 21939 | |||||
| * | Do not CopyFromReg physregs for live-in values. Instead, create a vreg for | Chris Lattner | 2005-05-13 | 1 | -31/+70 | |
| | | | | | | | | | | | each live in, and copy the regs from the vregs. As the very first thing we do in the function, insert copies from the pregs to the vregs. This fixes problems where the token chain of CopyFromReg was not enough to allow reordering of the copyfromreg nodes and other unchained nodes (e.g. div, which clobbers eax on intel). llvm-svn: 21932 | |||||
| * | rename the ADJCALLSTACKDOWN/ADJCALLSTACKUP nodes to be CALLSEQ_START/BEGIN. | Chris Lattner | 2005-05-12 | 5 | -32/+32 | |
| | | | | | llvm-svn: 21915 | |||||
| * | Add a new -enable-x86-fastcc option that enables passing the first | Chris Lattner | 2005-05-12 | 1 | -11/+424 | |
| | | | | | | | two integer values in registers for the fastcc calling conv. llvm-svn: 21912 | |||||
| * | Pass in Calling Convention to use into LowerCallTo | Chris Lattner | 2005-05-12 | 5 | -7/+11 | |
| | | | | | llvm-svn: 21899 | |||||
| * | Enable pattern isel by default | Chris Lattner | 2005-05-12 | 1 | -4/+4 | |
| | | | | | llvm-svn: 21898 | |||||

