summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Sparc
diff options
context:
space:
mode:
authorMisha Brukman <brukman+llvm@gmail.com>2003-05-29 05:29:22 +0000
committerMisha Brukman <brukman+llvm@gmail.com>2003-05-29 05:29:22 +0000
commit35d5512f34ed0ed234f3164a8ae0982f7ec9ac9e (patch)
treeed40cc6ffa5a9d9f29d8dd6555d056658e106598 /llvm/lib/Target/Sparc
parent05ff42617aab0318319642a6e342b38d59b115fa (diff)
downloadbcm5719-llvm-35d5512f34ed0ed234f3164a8ae0982f7ec9ac9e.tar.gz
bcm5719-llvm-35d5512f34ed0ed234f3164a8ae0982f7ec9ac9e.zip
When TableGen finds an error in the SparcV9.td file, it exits with a non-zero
exit code. This, in turn, makes an empty file SparcV9CodeEmitter.inc, and only much later, produces a link error because the key function that TableGen creates isn't found. Using a temporary file in the middle forces a good .INC file to be generated by TableGen, and it will keep trying until you fix the input file. llvm-svn: 6392
Diffstat (limited to 'llvm/lib/Target/Sparc')
-rw-r--r--llvm/lib/Target/Sparc/Makefile5
1 files changed, 4 insertions, 1 deletions
diff --git a/llvm/lib/Target/Sparc/Makefile b/llvm/lib/Target/Sparc/Makefile
index 96923f9865f..8b946333c1c 100644
--- a/llvm/lib/Target/Sparc/Makefile
+++ b/llvm/lib/Target/Sparc/Makefile
@@ -34,9 +34,12 @@ $(BUILD_ROOT)/Depend/Sparc.burm.d: $(BUILD_ROOT)/Depend/.dir
SparcV9CodeEmitter.cpp: SparcV9CodeEmitter.inc
+TEMP_EMITTER_INC = _temp_emitter.inc
+
SparcV9CodeEmitter.inc: SparcV9.td
@echo "TableGen-erating $@"
- cpp -P SparcV9.td | tblgen -gen-emitter > SparcV9CodeEmitter.inc
+ cpp -P SparcV9.td | tblgen -gen-emitter > $(TEMP_EMITTER_INC)
+ mv -f $(TEMP_EMITTER_INC) SparcV9CodeEmitter.inc
clean::
rm -f SparcV9CodeEmitter.inc
OpenPOWER on IntegriCloud