LLVM backend for 6502
Go to file
Ted Kremenek c5412c58d2 Re-implemented Path::createDirectoryOnDisk (for Unix).
This method allows one to create a directory, and optionally create all parent
directories that do not exist.

The original implementation would require that *all* directories along a path
are writable by the user, including directories that already exist. For example,
suppose we wanted to create the directory "/tmp/foo/bar", and the directory
"/tmp" already exists, but not "/tmp/foo". Since "/tmp" is writable by all
users, the original implementation would work, and create "/tmp/foo", followed
by "/tmp/bar".

A problem occurred, however if one wanted to created the directory
"/Users/myuser/bar" (or equivalently "/home/myuser/bar"), and "/Users/myuser"
already existed and is writable by the current user. The directory
"/User/myuser" is writable by the user, but "/User" is not. The original
implementation of createDirectoryOnDisk would return with failure since "/User"
is not writable, even though "/User/mysuser" is writable.

The new implementation works by recursively creating parents as needed, and thus
doesn't need to check the permissions on every directory in a path.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49162 91177308-0d34-0410-b5e6-96231b3b80d8
2008-04-03 16:11:31 +00:00
autoconf Adding ocamldoc generation. 2008-03-10 15:49:16 +00:00
bindings Expose Function::viewCFG and Function::viewCFGOnly to bindings. 2008-03-31 16:22:09 +00:00
docs more edits from Jon Sargeant 2008-04-02 00:38:26 +00:00
examples Fix an incorrect comment, PR2147. 2008-03-13 03:29:42 +00:00
include Backing out 48222 temporarily. 2008-04-03 03:13:16 +00:00
lib Re-implemented Path::createDirectoryOnDisk (for Unix). 2008-04-03 16:11:31 +00:00
projects remove attributions from the rest of the llvm makefiles. 2007-12-29 20:11:13 +00:00
runtime Fixing the stack walker. 2008-01-24 05:16:36 +00:00
test Testcase for EH with functions whose names are stripped. 2008-04-02 20:16:41 +00:00
tools Make EH work with unnamed functions. Reenable running 2008-04-02 20:10:52 +00:00
utils Move instruction flag inference out of InstrInfoEmitter and into 2008-04-03 00:02:49 +00:00
website Prepare for "core" website. 2007-08-03 05:43:35 +00:00
win32 Updating win32 VStudio project files with new file references and removing dead references. 2008-03-27 00:02:53 +00:00
Xcode Update project to reflect deleted files. 2008-03-23 16:49:47 +00:00
build-for-llvm-top.sh Allow the configure options to be set according to the llvm-top options. 2007-08-31 19:53:42 +00:00
configure Regenerate. 2008-03-10 15:49:38 +00:00
CREDITS.TXT Add Mikhail to credits file 2008-03-23 08:58:32 +00:00
LICENSE.TXT scoped_ptr.h was removed. 2008-02-09 22:50:06 +00:00
llvm.spec.in * llvm.spec.in: update blurb 2007-07-13 09:48:29 +00:00
Makefile a happier version of happiness 2008-03-21 22:17:07 +00:00
Makefile.common remove attributions from the rest of the llvm makefiles. 2007-12-29 20:11:13 +00:00
Makefile.config.in Reverting r48974. See PR2183 for details. 2008-03-31 16:46:23 +00:00
Makefile.rules Refresh Makefile.ocaml in objdir if it is modified in srcdir. 2008-03-10 15:58:40 +00:00
ModuleInfo.txt Update to include clean and install commands. 2007-07-20 20:54:41 +00:00
README.txt test 2007-04-20 20:49:25 +00:00

Low Level Virtual Machine (LLVM)
================================

This directory and its subdirectories contain source code for the Low Level 
Virtual Machine, a toolkit for the construction of highly optimized compilers,
optimizers, and runtime environments. 

LLVM is open source software. You may freely distribute it under the terms of
the license agreement found in LICENSE.txt.

Please see the HTML documentation provided in docs/index.html for further
assistance with LLVM.