Unified · Split
| @@ -35,12 +35,12 @@ endif · 34 unmodified lines | ||
| 35 | 35 | |
| 36 | 36 | XFLAGS += -I$(TOP) |
| 37 | 37 | |
| 38 | −I386_O = libtcc1.o alloca.o alloca-bt.o $(COMMON_O) | |
| 39 | −X86_64_O = libtcc1.o alloca.o alloca-bt.o $(COMMON_O) | |
| 40 | −ARM_O = libtcc1.o armeabi.o alloca.o armflush.o $(COMMON_O) | |
| 41 | −ARM64_O = lib-arm64.o alloca.o $(COMMON_O) | |
| 38 | +I386_O = libtcc1.o alloca-bt.o $(COMMON_O) | |
| 39 | +X86_64_O = libtcc1.o alloca-bt.o $(COMMON_O) | |
| 40 | +ARM_O = libtcc1.o armeabi.o armflush.o $(COMMON_O) | |
| 41 | +ARM64_O = lib-arm64.o $(COMMON_O) | |
| 42 | 42 | RISCV64_O = lib-arm64.o $(COMMON_O) |
| 43 | −COMMON_O = stdatomic.o atomic.o builtin.o | |
| 43 | +COMMON_O = stdatomic.o atomic.o builtin.o alloca.o | |
| 44 | 44 | WIN_O = crt1.o crt1w.o wincrt1.o wincrt1w.o dllcrt1.o dllmain.o |
| 45 | 45 | LIN_O = dsohandle.o |
| 46 | 46 | OSX_O = |
| @@ -142,4 +142,18 @@ p100: · 141 unmodified lines | ||
| 142 | 142 | #endif |
| 143 | 143 | .size alloca, .-alloca |
| 144 | 144 | /* ---------------------------------------------- */ |
| 145 | +#elif defined __riscv | |
| 146 | + | |
| 147 | + .text | |
| 148 | + .align 2 | |
| 149 | + .global alloca | |
| 150 | + .type alloca, %function | |
| 151 | +alloca: | |
| 152 | + sub sp, sp, a0 | |
| 153 | + addi sp, sp, -15 | |
| 154 | + andi sp, sp, -16 | |
| 155 | + add a0, sp, zero | |
| 156 | + ret | |
| 157 | + .size alloca, .-alloca | |
| 158 | +/* ---------------------------------------------- */ | |
| 145 | 159 | #endif |