summaryrefslogtreecommitdiff
path: root/libjava/java/util/concurrent
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/java/util/concurrent')
-rw-r--r--libjava/java/util/concurrent/AbstractExecutorService.h42
-rw-r--r--libjava/java/util/concurrent/ArrayBlockingQueue$Itr.h33
-rw-r--r--libjava/java/util/concurrent/ArrayBlockingQueue.h65
-rw-r--r--libjava/java/util/concurrent/BlockingDeque.h70
-rw-r--r--libjava/java/util/concurrent/BlockingQueue.h45
-rw-r--r--libjava/java/util/concurrent/BrokenBarrierException.h23
-rw-r--r--libjava/java/util/concurrent/Callable.h19
-rw-r--r--libjava/java/util/concurrent/CancellationException.h23
-rw-r--r--libjava/java/util/concurrent/CompletionService.h23
-rw-r--r--libjava/java/util/concurrent/ConcurrentHashMap$EntryIterator.h25
-rw-r--r--libjava/java/util/concurrent/ConcurrentHashMap$EntrySet.h28
-rw-r--r--libjava/java/util/concurrent/ConcurrentHashMap$HashEntry.h27
-rw-r--r--libjava/java/util/concurrent/ConcurrentHashMap$HashIterator.h39
-rw-r--r--libjava/java/util/concurrent/ConcurrentHashMap$KeyIterator.h25
-rw-r--r--libjava/java/util/concurrent/ConcurrentHashMap$KeySet.h28
-rw-r--r--libjava/java/util/concurrent/ConcurrentHashMap$Segment.h43
-rw-r--r--libjava/java/util/concurrent/ConcurrentHashMap$ValueIterator.h25
-rw-r--r--libjava/java/util/concurrent/ConcurrentHashMap$Values.h27
-rw-r--r--libjava/java/util/concurrent/ConcurrentHashMap$WriteThroughEntry.h24
-rw-r--r--libjava/java/util/concurrent/ConcurrentHashMap.h65
-rw-r--r--libjava/java/util/concurrent/ConcurrentLinkedQueue$Itr.h32
-rw-r--r--libjava/java/util/concurrent/ConcurrentLinkedQueue$Node.h32
-rw-r--r--libjava/java/util/concurrent/ConcurrentLinkedQueue.h43
-rw-r--r--libjava/java/util/concurrent/ConcurrentMap.h34
-rw-r--r--libjava/java/util/concurrent/ConcurrentNavigableMap.h66
-rw-r--r--libjava/java/util/concurrent/ConcurrentSkipListMap$ComparableUsingComparator.h25
-rw-r--r--libjava/java/util/concurrent/ConcurrentSkipListMap$EntryIterator.h25
-rw-r--r--libjava/java/util/concurrent/ConcurrentSkipListMap$EntrySet.h34
-rw-r--r--libjava/java/util/concurrent/ConcurrentSkipListMap$HeadIndex.h21
-rw-r--r--libjava/java/util/concurrent/ConcurrentSkipListMap$Index.h28
-rw-r--r--libjava/java/util/concurrent/ConcurrentSkipListMap$Iter.h32
-rw-r--r--libjava/java/util/concurrent/ConcurrentSkipListMap$KeyIterator.h24
-rw-r--r--libjava/java/util/concurrent/ConcurrentSkipListMap$KeySet.h54
-rw-r--r--libjava/java/util/concurrent/ConcurrentSkipListMap$Node.h34
-rw-r--r--libjava/java/util/concurrent/ConcurrentSkipListMap$SubMap$SubMapEntryIterator.h25
-rw-r--r--libjava/java/util/concurrent/ConcurrentSkipListMap$SubMap$SubMapIter.h35
-rw-r--r--libjava/java/util/concurrent/ConcurrentSkipListMap$SubMap$SubMapKeyIterator.h24
-rw-r--r--libjava/java/util/concurrent/ConcurrentSkipListMap$SubMap$SubMapValueIterator.h24
-rw-r--r--libjava/java/util/concurrent/ConcurrentSkipListMap$SubMap.h118
-rw-r--r--libjava/java/util/concurrent/ConcurrentSkipListMap$ValueIterator.h24
-rw-r--r--libjava/java/util/concurrent/ConcurrentSkipListMap$Values.h32
-rw-r--r--libjava/java/util/concurrent/ConcurrentSkipListMap.h136
-rw-r--r--libjava/java/util/concurrent/ConcurrentSkipListSet.h75
-rw-r--r--libjava/java/util/concurrent/CopyOnWriteArrayList$1.h35
-rw-r--r--libjava/java/util/concurrent/CopyOnWriteArrayList$2.h30
-rw-r--r--libjava/java/util/concurrent/CopyOnWriteArrayList$3.h36
-rw-r--r--libjava/java/util/concurrent/CopyOnWriteArrayList$RandomAccessSubList.h20
-rw-r--r--libjava/java/util/concurrent/CopyOnWriteArrayList$SubList.h42
-rw-r--r--libjava/java/util/concurrent/CopyOnWriteArrayList.h66
-rw-r--r--libjava/java/util/concurrent/CopyOnWriteArraySet.h41
-rw-r--r--libjava/java/util/concurrent/CountDownLatch$Sync.h26
-rw-r--r--libjava/java/util/concurrent/CountDownLatch.h27
-rw-r--r--libjava/java/util/concurrent/CyclicBarrier$Generation.h22
-rw-r--r--libjava/java/util/concurrent/CyclicBarrier.h37
-rw-r--r--libjava/java/util/concurrent/DelayQueue$Itr.h32
-rw-r--r--libjava/java/util/concurrent/DelayQueue.h57
-rw-r--r--libjava/java/util/concurrent/Delayed.h20
-rw-r--r--libjava/java/util/concurrent/Exchanger$Node.h21
-rw-r--r--libjava/java/util/concurrent/Exchanger$Slot.h36
-rw-r--r--libjava/java/util/concurrent/Exchanger.h42
-rw-r--r--libjava/java/util/concurrent/ExecutionException.h26
-rw-r--r--libjava/java/util/concurrent/Executor.h19
-rw-r--r--libjava/java/util/concurrent/ExecutorCompletionService$QueueingFuture.h26
-rw-r--r--libjava/java/util/concurrent/ExecutorCompletionService.h34
-rw-r--r--libjava/java/util/concurrent/ExecutorService.h31
-rw-r--r--libjava/java/util/concurrent/Executors$1.h24
-rw-r--r--libjava/java/util/concurrent/Executors$2.h24
-rw-r--r--libjava/java/util/concurrent/Executors$3.h27
-rw-r--r--libjava/java/util/concurrent/Executors$4.h26
-rw-r--r--libjava/java/util/concurrent/Executors$5.h34
-rw-r--r--libjava/java/util/concurrent/Executors$6.h34
-rw-r--r--libjava/java/util/concurrent/Executors$DefaultThreadFactory.h27
-rw-r--r--libjava/java/util/concurrent/Executors$DelegatedExecutorService.h36
-rw-r--r--libjava/java/util/concurrent/Executors$DelegatedScheduledExecutorService.h27
-rw-r--r--libjava/java/util/concurrent/Executors$FinalizableDelegatedExecutorService.h22
-rw-r--r--libjava/java/util/concurrent/Executors$PrivilegedCallable.h41
-rw-r--r--libjava/java/util/concurrent/Executors$PrivilegedCallableUsingCurrentClassLoader.h43
-rw-r--r--libjava/java/util/concurrent/Executors$PrivilegedThreadFactory.h38
-rw-r--r--libjava/java/util/concurrent/Executors$RunnableAdapter.h25
-rw-r--r--libjava/java/util/concurrent/Executors.h52
-rw-r--r--libjava/java/util/concurrent/Future.h23
-rw-r--r--libjava/java/util/concurrent/FutureTask$Sync.h46
-rw-r--r--libjava/java/util/concurrent/FutureTask.h36
-rw-r--r--libjava/java/util/concurrent/LinkedBlockingDeque$AbstractItr.h32
-rw-r--r--libjava/java/util/concurrent/LinkedBlockingDeque$DescendingItr.h23
-rw-r--r--libjava/java/util/concurrent/LinkedBlockingDeque$Itr.h23
-rw-r--r--libjava/java/util/concurrent/LinkedBlockingDeque$Node.h23
-rw-r--r--libjava/java/util/concurrent/LinkedBlockingDeque.h96
-rw-r--r--libjava/java/util/concurrent/LinkedBlockingQueue$Itr.h30
-rw-r--r--libjava/java/util/concurrent/LinkedBlockingQueue$Node.h22
-rw-r--r--libjava/java/util/concurrent/LinkedBlockingQueue.h71
-rw-r--r--libjava/java/util/concurrent/PriorityBlockingQueue$Itr.h31
-rw-r--r--libjava/java/util/concurrent/PriorityBlockingQueue.h57
-rw-r--r--libjava/java/util/concurrent/RejectedExecutionException.h25
-rw-r--r--libjava/java/util/concurrent/RejectedExecutionHandler.h19
-rw-r--r--libjava/java/util/concurrent/RunnableFuture.h24
-rw-r--r--libjava/java/util/concurrent/RunnableScheduledFuture.h27
-rw-r--r--libjava/java/util/concurrent/ScheduledExecutorService.h35
-rw-r--r--libjava/java/util/concurrent/ScheduledFuture.h25
-rw-r--r--libjava/java/util/concurrent/ScheduledThreadPoolExecutor$1.h29
-rw-r--r--libjava/java/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue.h58
-rw-r--r--libjava/java/util/concurrent/ScheduledThreadPoolExecutor$ScheduledFutureTask.h40
-rw-r--r--libjava/java/util/concurrent/ScheduledThreadPoolExecutor.h56
-rw-r--r--libjava/java/util/concurrent/Semaphore$FairSync.h24
-rw-r--r--libjava/java/util/concurrent/Semaphore$NonfairSync.h24
-rw-r--r--libjava/java/util/concurrent/Semaphore$Sync.h29
-rw-r--r--libjava/java/util/concurrent/Semaphore.h46
-rw-r--r--libjava/java/util/concurrent/SynchronousQueue$EmptyIterator.h23
-rw-r--r--libjava/java/util/concurrent/SynchronousQueue$FifoWaitQueue.h22
-rw-r--r--libjava/java/util/concurrent/SynchronousQueue$LifoWaitQueue.h22
-rw-r--r--libjava/java/util/concurrent/SynchronousQueue$TransferQueue$QNode.h31
-rw-r--r--libjava/java/util/concurrent/SynchronousQueue$TransferQueue.h32
-rw-r--r--libjava/java/util/concurrent/SynchronousQueue$TransferStack$SNode.h31
-rw-r--r--libjava/java/util/concurrent/SynchronousQueue$TransferStack.h32
-rw-r--r--libjava/java/util/concurrent/SynchronousQueue$Transferer.h21
-rw-r--r--libjava/java/util/concurrent/SynchronousQueue$WaitQueue.h20
-rw-r--r--libjava/java/util/concurrent/SynchronousQueue.h58
-rw-r--r--libjava/java/util/concurrent/ThreadFactory.h19
-rw-r--r--libjava/java/util/concurrent/ThreadPoolExecutor$AbortPolicy.h20
-rw-r--r--libjava/java/util/concurrent/ThreadPoolExecutor$CallerRunsPolicy.h20
-rw-r--r--libjava/java/util/concurrent/ThreadPoolExecutor$DiscardOldestPolicy.h20
-rw-r--r--libjava/java/util/concurrent/ThreadPoolExecutor$DiscardPolicy.h20
-rw-r--r--libjava/java/util/concurrent/ThreadPoolExecutor$Worker.h34
-rw-r--r--libjava/java/util/concurrent/ThreadPoolExecutor.h97
-rw-r--r--libjava/java/util/concurrent/TimeUnit$1.h31
-rw-r--r--libjava/java/util/concurrent/TimeUnit$2.h31
-rw-r--r--libjava/java/util/concurrent/TimeUnit$3.h31
-rw-r--r--libjava/java/util/concurrent/TimeUnit$4.h31
-rw-r--r--libjava/java/util/concurrent/TimeUnit$5.h31
-rw-r--r--libjava/java/util/concurrent/TimeUnit$6.h31
-rw-r--r--libjava/java/util/concurrent/TimeUnit$7.h31
-rw-r--r--libjava/java/util/concurrent/TimeUnit.h61
-rw-r--r--libjava/java/util/concurrent/TimeoutException.h23
-rw-r--r--libjava/java/util/concurrent/atomic/AtomicBoolean.h43
-rw-r--r--libjava/java/util/concurrent/atomic/AtomicInteger.h53
-rw-r--r--libjava/java/util/concurrent/atomic/AtomicIntegerArray.h54
-rw-r--r--libjava/java/util/concurrent/atomic/AtomicIntegerFieldUpdater$AtomicIntegerFieldUpdaterImpl.h44
-rw-r--r--libjava/java/util/concurrent/atomic/AtomicIntegerFieldUpdater.h34
-rw-r--r--libjava/java/util/concurrent/atomic/AtomicLong.h57
-rw-r--r--libjava/java/util/concurrent/atomic/AtomicLongArray.h54
-rw-r--r--libjava/java/util/concurrent/atomic/AtomicLongFieldUpdater$CASUpdater.h44
-rw-r--r--libjava/java/util/concurrent/atomic/AtomicLongFieldUpdater$LockedUpdater.h44
-rw-r--r--libjava/java/util/concurrent/atomic/AtomicLongFieldUpdater.h34
-rw-r--r--libjava/java/util/concurrent/atomic/AtomicMarkableReference$ReferenceBooleanPair.h25
-rw-r--r--libjava/java/util/concurrent/atomic/AtomicMarkableReference.h31
-rw-r--r--libjava/java/util/concurrent/atomic/AtomicReference.h43
-rw-r--r--libjava/java/util/concurrent/atomic/AtomicReferenceArray.h48
-rw-r--r--libjava/java/util/concurrent/atomic/AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl.h45
-rw-r--r--libjava/java/util/concurrent/atomic/AtomicReferenceFieldUpdater.h28
-rw-r--r--libjava/java/util/concurrent/atomic/AtomicStampedReference$ReferenceIntegerPair.h25
-rw-r--r--libjava/java/util/concurrent/atomic/AtomicStampedReference.h31
-rw-r--r--libjava/java/util/concurrent/atomic/natAtomicLong.cc12
-rw-r--r--libjava/java/util/concurrent/locks/AbstractOwnableSynchronizer.h25
-rw-r--r--libjava/java/util/concurrent/locks/AbstractQueuedLongSynchronizer$ConditionObject.h52
-rw-r--r--libjava/java/util/concurrent/locks/AbstractQueuedLongSynchronizer$Node.h34
-rw-r--r--libjava/java/util/concurrent/locks/AbstractQueuedLongSynchronizer.h115
-rw-r--r--libjava/java/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject.h52
-rw-r--r--libjava/java/util/concurrent/locks/AbstractQueuedSynchronizer$Node.h34
-rw-r--r--libjava/java/util/concurrent/locks/AbstractQueuedSynchronizer.h115
-rw-r--r--libjava/java/util/concurrent/locks/Condition.h25
-rw-r--r--libjava/java/util/concurrent/locks/Lock.h24
-rw-r--r--libjava/java/util/concurrent/locks/LockSupport.h42
-rw-r--r--libjava/java/util/concurrent/locks/ReadWriteLock.h20
-rw-r--r--libjava/java/util/concurrent/locks/ReentrantLock$FairSync.h25
-rw-r--r--libjava/java/util/concurrent/locks/ReentrantLock$NonfairSync.h25
-rw-r--r--libjava/java/util/concurrent/locks/ReentrantLock$Sync.h33
-rw-r--r--libjava/java/util/concurrent/locks/ReentrantLock.h49
-rw-r--r--libjava/java/util/concurrent/locks/ReentrantReadWriteLock$FairSync.h24
-rw-r--r--libjava/java/util/concurrent/locks/ReentrantReadWriteLock$NonfairSync.h24
-rw-r--r--libjava/java/util/concurrent/locks/ReentrantReadWriteLock$ReadLock.h31
-rw-r--r--libjava/java/util/concurrent/locks/ReentrantReadWriteLock$Sync$HoldCounter.h23
-rw-r--r--libjava/java/util/concurrent/locks/ReentrantReadWriteLock$Sync$ThreadLocalHoldCounter.h22
-rw-r--r--libjava/java/util/concurrent/locks/ReentrantReadWriteLock$Sync.h55
-rw-r--r--libjava/java/util/concurrent/locks/ReentrantReadWriteLock$WriteLock.h33
-rw-r--r--libjava/java/util/concurrent/locks/ReentrantReadWriteLock.h57
175 files changed, 6367 insertions, 0 deletions
diff --git a/libjava/java/util/concurrent/AbstractExecutorService.h b/libjava/java/util/concurrent/AbstractExecutorService.h
new file mode 100644
index 000000000..796171e61
--- /dev/null
+++ b/libjava/java/util/concurrent/AbstractExecutorService.h
@@ -0,0 +1,42 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_AbstractExecutorService__
+#define __java_util_concurrent_AbstractExecutorService__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::AbstractExecutorService : public ::java::lang::Object
+{
+
+public:
+ AbstractExecutorService();
+public: // actually protected
+ virtual ::java::util::concurrent::RunnableFuture * newTaskFor(::java::lang::Runnable *, ::java::lang::Object *);
+ virtual ::java::util::concurrent::RunnableFuture * newTaskFor(::java::util::concurrent::Callable *);
+public:
+ virtual ::java::util::concurrent::Future * submit(::java::lang::Runnable *);
+ virtual ::java::util::concurrent::Future * submit(::java::lang::Runnable *, ::java::lang::Object *);
+ virtual ::java::util::concurrent::Future * submit(::java::util::concurrent::Callable *);
+private:
+ ::java::lang::Object * doInvokeAny(::java::util::Collection *, jboolean, jlong);
+public:
+ virtual ::java::lang::Object * invokeAny(::java::util::Collection *);
+ virtual ::java::lang::Object * invokeAny(::java::util::Collection *, jlong, ::java::util::concurrent::TimeUnit *);
+ virtual ::java::util::List * invokeAll(::java::util::Collection *);
+ virtual ::java::util::List * invokeAll(::java::util::Collection *, jlong, ::java::util::concurrent::TimeUnit *);
+ virtual void shutdown() = 0;
+ virtual ::java::util::List * shutdownNow() = 0;
+ virtual jboolean isShutdown() = 0;
+ virtual jboolean isTerminated() = 0;
+ virtual jboolean awaitTermination(jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ virtual void execute(::java::lang::Runnable *) = 0;
+public: // actually package-private
+ static jboolean $assertionsDisabled;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_AbstractExecutorService__
diff --git a/libjava/java/util/concurrent/ArrayBlockingQueue$Itr.h b/libjava/java/util/concurrent/ArrayBlockingQueue$Itr.h
new file mode 100644
index 000000000..fdddf6c31
--- /dev/null
+++ b/libjava/java/util/concurrent/ArrayBlockingQueue$Itr.h
@@ -0,0 +1,33 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ArrayBlockingQueue$Itr__
+#define __java_util_concurrent_ArrayBlockingQueue$Itr__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::ArrayBlockingQueue$Itr : public ::java::lang::Object
+{
+
+public: // actually package-private
+ ArrayBlockingQueue$Itr(::java::util::concurrent::ArrayBlockingQueue *);
+public:
+ virtual jboolean hasNext();
+private:
+ void checkNext();
+public:
+ virtual ::java::lang::Object * next();
+ virtual void remove();
+private:
+ jint __attribute__((aligned(__alignof__( ::java::lang::Object)))) nextIndex;
+ ::java::lang::Object * nextItem;
+ jint lastRet;
+public: // actually package-private
+ ::java::util::concurrent::ArrayBlockingQueue * this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ArrayBlockingQueue$Itr__
diff --git a/libjava/java/util/concurrent/ArrayBlockingQueue.h b/libjava/java/util/concurrent/ArrayBlockingQueue.h
new file mode 100644
index 000000000..a431043c6
--- /dev/null
+++ b/libjava/java/util/concurrent/ArrayBlockingQueue.h
@@ -0,0 +1,65 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ArrayBlockingQueue__
+#define __java_util_concurrent_ArrayBlockingQueue__
+
+#pragma interface
+
+#include <java/util/AbstractQueue.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::ArrayBlockingQueue : public ::java::util::AbstractQueue
+{
+
+public: // actually package-private
+ virtual jint inc(jint);
+private:
+ void insert(::java::lang::Object *);
+ ::java::lang::Object * extract();
+public: // actually package-private
+ virtual void removeAt(jint);
+public:
+ ArrayBlockingQueue(jint);
+ ArrayBlockingQueue(jint, jboolean);
+ ArrayBlockingQueue(jint, jboolean, ::java::util::Collection *);
+ virtual jboolean add(::java::lang::Object *);
+ virtual jboolean offer(::java::lang::Object *);
+ virtual void put(::java::lang::Object *);
+ virtual jboolean offer(::java::lang::Object *, jlong, ::java::util::concurrent::TimeUnit *);
+ virtual ::java::lang::Object * poll();
+ virtual ::java::lang::Object * take();
+ virtual ::java::lang::Object * poll(jlong, ::java::util::concurrent::TimeUnit *);
+ virtual ::java::lang::Object * peek();
+ virtual jint size();
+ virtual jint remainingCapacity();
+ virtual jboolean remove(::java::lang::Object *);
+ virtual jboolean contains(::java::lang::Object *);
+ virtual JArray< ::java::lang::Object * > * toArray();
+ virtual JArray< ::java::lang::Object * > * toArray(JArray< ::java::lang::Object * > *);
+ virtual ::java::lang::String * toString();
+ virtual void clear();
+ virtual jint drainTo(::java::util::Collection *);
+ virtual jint drainTo(::java::util::Collection *, jint);
+ virtual ::java::util::Iterator * iterator();
+public: // actually package-private
+ static jint access$0(::java::util::concurrent::ArrayBlockingQueue *);
+ static jint access$1(::java::util::concurrent::ArrayBlockingQueue *);
+ static JArray< ::java::lang::Object * > * access$2(::java::util::concurrent::ArrayBlockingQueue *);
+ static jint access$3(::java::util::concurrent::ArrayBlockingQueue *);
+ static ::java::util::concurrent::locks::ReentrantLock * access$4(::java::util::concurrent::ArrayBlockingQueue *);
+private:
+ static const jlong serialVersionUID = -817911632652898426LL;
+ JArray< ::java::lang::Object * > * __attribute__((aligned(__alignof__( ::java::util::AbstractQueue)))) items;
+ jint takeIndex;
+ jint putIndex;
+ jint count;
+ ::java::util::concurrent::locks::ReentrantLock * lock;
+ ::java::util::concurrent::locks::Condition * notEmpty;
+ ::java::util::concurrent::locks::Condition * notFull;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ArrayBlockingQueue__
diff --git a/libjava/java/util/concurrent/BlockingDeque.h b/libjava/java/util/concurrent/BlockingDeque.h
new file mode 100644
index 000000000..4aa4cb533
--- /dev/null
+++ b/libjava/java/util/concurrent/BlockingDeque.h
@@ -0,0 +1,70 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_BlockingDeque__
+#define __java_util_concurrent_BlockingDeque__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::BlockingDeque : public ::java::lang::Object
+{
+
+public:
+ virtual void addFirst(::java::lang::Object *) = 0;
+ virtual void addLast(::java::lang::Object *) = 0;
+ virtual jboolean offerFirst(::java::lang::Object *) = 0;
+ virtual jboolean offerLast(::java::lang::Object *) = 0;
+ virtual void putFirst(::java::lang::Object *) = 0;
+ virtual void putLast(::java::lang::Object *) = 0;
+ virtual jboolean offerFirst(::java::lang::Object *, jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ virtual jboolean offerLast(::java::lang::Object *, jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ virtual ::java::lang::Object * takeFirst() = 0;
+ virtual ::java::lang::Object * takeLast() = 0;
+ virtual ::java::lang::Object * pollFirst(jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ virtual ::java::lang::Object * pollLast(jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ virtual jboolean removeFirstOccurrence(::java::lang::Object *) = 0;
+ virtual jboolean removeLastOccurrence(::java::lang::Object *) = 0;
+ virtual jboolean add(::java::lang::Object *) = 0;
+ virtual jboolean offer(::java::lang::Object *) = 0;
+ virtual void put(::java::lang::Object *) = 0;
+ virtual jboolean offer(::java::lang::Object *, jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ virtual ::java::lang::Object * remove() = 0;
+ virtual ::java::lang::Object * poll() = 0;
+ virtual ::java::lang::Object * take() = 0;
+ virtual ::java::lang::Object * poll(jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ virtual ::java::lang::Object * element() = 0;
+ virtual ::java::lang::Object * peek() = 0;
+ virtual jboolean remove(::java::lang::Object *) = 0;
+ virtual jboolean contains(::java::lang::Object *) = 0;
+ virtual jint size() = 0;
+ virtual ::java::util::Iterator * iterator() = 0;
+ virtual void push(::java::lang::Object *) = 0;
+ virtual jint remainingCapacity() = 0;
+ virtual jint drainTo(::java::util::Collection *) = 0;
+ virtual jint drainTo(::java::util::Collection *, jint) = 0;
+ virtual jboolean addAll(::java::util::Collection *) = 0;
+ virtual void clear() = 0;
+ virtual jboolean containsAll(::java::util::Collection *) = 0;
+ virtual jboolean isEmpty() = 0;
+ virtual jboolean removeAll(::java::util::Collection *) = 0;
+ virtual jboolean retainAll(::java::util::Collection *) = 0;
+ virtual JArray< ::java::lang::Object * > * toArray() = 0;
+ virtual JArray< ::java::lang::Object * > * toArray(JArray< ::java::lang::Object * > *) = 0;
+ virtual ::java::lang::Object * removeFirst() = 0;
+ virtual ::java::lang::Object * removeLast() = 0;
+ virtual ::java::lang::Object * pollFirst() = 0;
+ virtual ::java::lang::Object * pollLast() = 0;
+ virtual ::java::lang::Object * getFirst() = 0;
+ virtual ::java::lang::Object * getLast() = 0;
+ virtual ::java::lang::Object * peekFirst() = 0;
+ virtual ::java::lang::Object * peekLast() = 0;
+ virtual ::java::lang::Object * pop() = 0;
+ virtual ::java::util::Iterator * descendingIterator() = 0;
+ static ::java::lang::Class class$;
+} __attribute__ ((java_interface));
+
+#endif // __java_util_concurrent_BlockingDeque__
diff --git a/libjava/java/util/concurrent/BlockingQueue.h b/libjava/java/util/concurrent/BlockingQueue.h
new file mode 100644
index 000000000..66cc905fb
--- /dev/null
+++ b/libjava/java/util/concurrent/BlockingQueue.h
@@ -0,0 +1,45 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_BlockingQueue__
+#define __java_util_concurrent_BlockingQueue__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::BlockingQueue : public ::java::lang::Object
+{
+
+public:
+ virtual jboolean add(::java::lang::Object *) = 0;
+ virtual jboolean offer(::java::lang::Object *) = 0;
+ virtual void put(::java::lang::Object *) = 0;
+ virtual jboolean offer(::java::lang::Object *, jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ virtual ::java::lang::Object * take() = 0;
+ virtual ::java::lang::Object * poll(jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ virtual jint remainingCapacity() = 0;
+ virtual jboolean remove(::java::lang::Object *) = 0;
+ virtual jboolean contains(::java::lang::Object *) = 0;
+ virtual jint drainTo(::java::util::Collection *) = 0;
+ virtual jint drainTo(::java::util::Collection *, jint) = 0;
+ virtual ::java::lang::Object * remove() = 0;
+ virtual ::java::lang::Object * poll() = 0;
+ virtual ::java::lang::Object * element() = 0;
+ virtual ::java::lang::Object * peek() = 0;
+ virtual jboolean addAll(::java::util::Collection *) = 0;
+ virtual void clear() = 0;
+ virtual jboolean containsAll(::java::util::Collection *) = 0;
+ virtual jboolean isEmpty() = 0;
+ virtual ::java::util::Iterator * iterator() = 0;
+ virtual jboolean removeAll(::java::util::Collection *) = 0;
+ virtual jboolean retainAll(::java::util::Collection *) = 0;
+ virtual jint size() = 0;
+ virtual JArray< ::java::lang::Object * > * toArray() = 0;
+ virtual JArray< ::java::lang::Object * > * toArray(JArray< ::java::lang::Object * > *) = 0;
+ static ::java::lang::Class class$;
+} __attribute__ ((java_interface));
+
+#endif // __java_util_concurrent_BlockingQueue__
diff --git a/libjava/java/util/concurrent/BrokenBarrierException.h b/libjava/java/util/concurrent/BrokenBarrierException.h
new file mode 100644
index 000000000..e5930d5d5
--- /dev/null
+++ b/libjava/java/util/concurrent/BrokenBarrierException.h
@@ -0,0 +1,23 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_BrokenBarrierException__
+#define __java_util_concurrent_BrokenBarrierException__
+
+#pragma interface
+
+#include <java/lang/Exception.h>
+
+class java::util::concurrent::BrokenBarrierException : public ::java::lang::Exception
+{
+
+public:
+ BrokenBarrierException();
+ BrokenBarrierException(::java::lang::String *);
+private:
+ static const jlong serialVersionUID = 7117394618823254244LL;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_BrokenBarrierException__
diff --git a/libjava/java/util/concurrent/Callable.h b/libjava/java/util/concurrent/Callable.h
new file mode 100644
index 000000000..636260e03
--- /dev/null
+++ b/libjava/java/util/concurrent/Callable.h
@@ -0,0 +1,19 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Callable__
+#define __java_util_concurrent_Callable__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::Callable : public ::java::lang::Object
+{
+
+public:
+ virtual ::java::lang::Object * call() = 0;
+ static ::java::lang::Class class$;
+} __attribute__ ((java_interface));
+
+#endif // __java_util_concurrent_Callable__
diff --git a/libjava/java/util/concurrent/CancellationException.h b/libjava/java/util/concurrent/CancellationException.h
new file mode 100644
index 000000000..7695b0162
--- /dev/null
+++ b/libjava/java/util/concurrent/CancellationException.h
@@ -0,0 +1,23 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_CancellationException__
+#define __java_util_concurrent_CancellationException__
+
+#pragma interface
+
+#include <java/lang/IllegalStateException.h>
+
+class java::util::concurrent::CancellationException : public ::java::lang::IllegalStateException
+{
+
+public:
+ CancellationException();
+ CancellationException(::java::lang::String *);
+private:
+ static const jlong serialVersionUID = -9202173006928992231LL;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_CancellationException__
diff --git a/libjava/java/util/concurrent/CompletionService.h b/libjava/java/util/concurrent/CompletionService.h
new file mode 100644
index 000000000..90d79023c
--- /dev/null
+++ b/libjava/java/util/concurrent/CompletionService.h
@@ -0,0 +1,23 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_CompletionService__
+#define __java_util_concurrent_CompletionService__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::CompletionService : public ::java::lang::Object
+{
+
+public:
+ virtual ::java::util::concurrent::Future * submit(::java::util::concurrent::Callable *) = 0;
+ virtual ::java::util::concurrent::Future * submit(::java::lang::Runnable *, ::java::lang::Object *) = 0;
+ virtual ::java::util::concurrent::Future * take() = 0;
+ virtual ::java::util::concurrent::Future * poll() = 0;
+ virtual ::java::util::concurrent::Future * poll(jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ static ::java::lang::Class class$;
+} __attribute__ ((java_interface));
+
+#endif // __java_util_concurrent_CompletionService__
diff --git a/libjava/java/util/concurrent/ConcurrentHashMap$EntryIterator.h b/libjava/java/util/concurrent/ConcurrentHashMap$EntryIterator.h
new file mode 100644
index 000000000..4c4c191b5
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentHashMap$EntryIterator.h
@@ -0,0 +1,25 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentHashMap$EntryIterator__
+#define __java_util_concurrent_ConcurrentHashMap$EntryIterator__
+
+#pragma interface
+
+#include <java/util/concurrent/ConcurrentHashMap$HashIterator.h>
+
+class java::util::concurrent::ConcurrentHashMap$EntryIterator : public ::java::util::concurrent::ConcurrentHashMap$HashIterator
+{
+
+public: // actually package-private
+ ConcurrentHashMap$EntryIterator(::java::util::concurrent::ConcurrentHashMap *);
+public:
+ ::java::util::Map$Entry * ConcurrentHashMap$EntryIterator$next();
+ ::java::lang::Object * next();
+public: // actually package-private
+ ::java::util::concurrent::ConcurrentHashMap * __attribute__((aligned(__alignof__( ::java::util::concurrent::ConcurrentHashMap$HashIterator)))) this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentHashMap$EntryIterator__
diff --git a/libjava/java/util/concurrent/ConcurrentHashMap$EntrySet.h b/libjava/java/util/concurrent/ConcurrentHashMap$EntrySet.h
new file mode 100644
index 000000000..999c02283
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentHashMap$EntrySet.h
@@ -0,0 +1,28 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentHashMap$EntrySet__
+#define __java_util_concurrent_ConcurrentHashMap$EntrySet__
+
+#pragma interface
+
+#include <java/util/AbstractSet.h>
+
+class java::util::concurrent::ConcurrentHashMap$EntrySet : public ::java::util::AbstractSet
+{
+
+public: // actually package-private
+ ConcurrentHashMap$EntrySet(::java::util::concurrent::ConcurrentHashMap *);
+public:
+ ::java::util::Iterator * iterator();
+ jboolean contains(::java::lang::Object *);
+ jboolean remove(::java::lang::Object *);
+ jint size();
+ void clear();
+public: // actually package-private
+ ::java::util::concurrent::ConcurrentHashMap * __attribute__((aligned(__alignof__( ::java::util::AbstractSet)))) this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentHashMap$EntrySet__
diff --git a/libjava/java/util/concurrent/ConcurrentHashMap$HashEntry.h b/libjava/java/util/concurrent/ConcurrentHashMap$HashEntry.h
new file mode 100644
index 000000000..2667ed07c
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentHashMap$HashEntry.h
@@ -0,0 +1,27 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentHashMap$HashEntry__
+#define __java_util_concurrent_ConcurrentHashMap$HashEntry__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::ConcurrentHashMap$HashEntry : public ::java::lang::Object
+{
+
+public: // actually package-private
+ ConcurrentHashMap$HashEntry(::java::lang::Object *, jint, ::java::util::concurrent::ConcurrentHashMap$HashEntry *, ::java::lang::Object *);
+ static JArray< ::java::util::concurrent::ConcurrentHashMap$HashEntry * > * newArray(jint);
+ ::java::lang::Object * __attribute__((aligned(__alignof__( ::java::lang::Object)))) key;
+ jint hash;
+ ::java::lang::Object * volatile value;
+ ::java::util::concurrent::ConcurrentHashMap$HashEntry * next;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentHashMap$HashEntry__
diff --git a/libjava/java/util/concurrent/ConcurrentHashMap$HashIterator.h b/libjava/java/util/concurrent/ConcurrentHashMap$HashIterator.h
new file mode 100644
index 000000000..2a3895cb1
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentHashMap$HashIterator.h
@@ -0,0 +1,39 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentHashMap$HashIterator__
+#define __java_util_concurrent_ConcurrentHashMap$HashIterator__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::ConcurrentHashMap$HashIterator : public ::java::lang::Object
+{
+
+public: // actually package-private
+ ConcurrentHashMap$HashIterator(::java::util::concurrent::ConcurrentHashMap *);
+public:
+ virtual jboolean hasMoreElements();
+public: // actually package-private
+ virtual void advance();
+public:
+ virtual jboolean hasNext();
+public: // actually package-private
+ virtual ::java::util::concurrent::ConcurrentHashMap$HashEntry * nextEntry();
+public:
+ virtual void remove();
+public: // actually package-private
+ jint __attribute__((aligned(__alignof__( ::java::lang::Object)))) nextSegmentIndex;
+ jint nextTableIndex;
+ JArray< ::java::util::concurrent::ConcurrentHashMap$HashEntry * > * currentTable;
+ ::java::util::concurrent::ConcurrentHashMap$HashEntry * nextEntry__;
+ ::java::util::concurrent::ConcurrentHashMap$HashEntry * lastReturned;
+ ::java::util::concurrent::ConcurrentHashMap * this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentHashMap$HashIterator__
diff --git a/libjava/java/util/concurrent/ConcurrentHashMap$KeyIterator.h b/libjava/java/util/concurrent/ConcurrentHashMap$KeyIterator.h
new file mode 100644
index 000000000..afa1b8a0d
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentHashMap$KeyIterator.h
@@ -0,0 +1,25 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentHashMap$KeyIterator__
+#define __java_util_concurrent_ConcurrentHashMap$KeyIterator__
+
+#pragma interface
+
+#include <java/util/concurrent/ConcurrentHashMap$HashIterator.h>
+
+class java::util::concurrent::ConcurrentHashMap$KeyIterator : public ::java::util::concurrent::ConcurrentHashMap$HashIterator
+{
+
+public: // actually package-private
+ ConcurrentHashMap$KeyIterator(::java::util::concurrent::ConcurrentHashMap *);
+public:
+ ::java::lang::Object * next();
+ ::java::lang::Object * nextElement();
+public: // actually package-private
+ ::java::util::concurrent::ConcurrentHashMap * __attribute__((aligned(__alignof__( ::java::util::concurrent::ConcurrentHashMap$HashIterator)))) this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentHashMap$KeyIterator__
diff --git a/libjava/java/util/concurrent/ConcurrentHashMap$KeySet.h b/libjava/java/util/concurrent/ConcurrentHashMap$KeySet.h
new file mode 100644
index 000000000..31b002fed
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentHashMap$KeySet.h
@@ -0,0 +1,28 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentHashMap$KeySet__
+#define __java_util_concurrent_ConcurrentHashMap$KeySet__
+
+#pragma interface
+
+#include <java/util/AbstractSet.h>
+
+class java::util::concurrent::ConcurrentHashMap$KeySet : public ::java::util::AbstractSet
+{
+
+public: // actually package-private
+ ConcurrentHashMap$KeySet(::java::util::concurrent::ConcurrentHashMap *);
+public:
+ ::java::util::Iterator * iterator();
+ jint size();
+ jboolean contains(::java::lang::Object *);
+ jboolean remove(::java::lang::Object *);
+ void clear();
+public: // actually package-private
+ ::java::util::concurrent::ConcurrentHashMap * __attribute__((aligned(__alignof__( ::java::util::AbstractSet)))) this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentHashMap$KeySet__
diff --git a/libjava/java/util/concurrent/ConcurrentHashMap$Segment.h b/libjava/java/util/concurrent/ConcurrentHashMap$Segment.h
new file mode 100644
index 000000000..55d06e869
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentHashMap$Segment.h
@@ -0,0 +1,43 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentHashMap$Segment__
+#define __java_util_concurrent_ConcurrentHashMap$Segment__
+
+#pragma interface
+
+#include <java/util/concurrent/locks/ReentrantLock.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::ConcurrentHashMap$Segment : public ::java::util::concurrent::locks::ReentrantLock
+{
+
+public: // actually package-private
+ ConcurrentHashMap$Segment(jint, jfloat);
+ static JArray< ::java::util::concurrent::ConcurrentHashMap$Segment * > * newArray(jint);
+ void setTable(JArray< ::java::util::concurrent::ConcurrentHashMap$HashEntry * > *);
+ ::java::util::concurrent::ConcurrentHashMap$HashEntry * getFirst(jint);
+ ::java::lang::Object * readValueUnderLock(::java::util::concurrent::ConcurrentHashMap$HashEntry *);
+ ::java::lang::Object * get(::java::lang::Object *, jint);
+ jboolean containsKey(::java::lang::Object *, jint);
+ jboolean containsValue(::java::lang::Object *);
+ jboolean replace(::java::lang::Object *, jint, ::java::lang::Object *, ::java::lang::Object *);
+ ::java::lang::Object * replace(::java::lang::Object *, jint, ::java::lang::Object *);
+ ::java::lang::Object * put(::java::lang::Object *, jint, ::java::lang::Object *, jboolean);
+ void rehash();
+ ::java::lang::Object * remove(::java::lang::Object *, jint, ::java::lang::Object *);
+ void clear();
+private:
+ static const jlong serialVersionUID = 2249069246763182397LL;
+public: // actually package-private
+ jint volatile __attribute__((aligned(__alignof__( ::java::util::concurrent::locks::ReentrantLock)))) count;
+ jint modCount;
+ jint threshold;
+ JArray< ::java::util::concurrent::ConcurrentHashMap$HashEntry * > * volatile table;
+ jfloat loadFactor;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentHashMap$Segment__
diff --git a/libjava/java/util/concurrent/ConcurrentHashMap$ValueIterator.h b/libjava/java/util/concurrent/ConcurrentHashMap$ValueIterator.h
new file mode 100644
index 000000000..6ccd9057c
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentHashMap$ValueIterator.h
@@ -0,0 +1,25 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentHashMap$ValueIterator__
+#define __java_util_concurrent_ConcurrentHashMap$ValueIterator__
+
+#pragma interface
+
+#include <java/util/concurrent/ConcurrentHashMap$HashIterator.h>
+
+class java::util::concurrent::ConcurrentHashMap$ValueIterator : public ::java::util::concurrent::ConcurrentHashMap$HashIterator
+{
+
+public: // actually package-private
+ ConcurrentHashMap$ValueIterator(::java::util::concurrent::ConcurrentHashMap *);
+public:
+ ::java::lang::Object * next();
+ ::java::lang::Object * nextElement();
+public: // actually package-private
+ ::java::util::concurrent::ConcurrentHashMap * __attribute__((aligned(__alignof__( ::java::util::concurrent::ConcurrentHashMap$HashIterator)))) this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentHashMap$ValueIterator__
diff --git a/libjava/java/util/concurrent/ConcurrentHashMap$Values.h b/libjava/java/util/concurrent/ConcurrentHashMap$Values.h
new file mode 100644
index 000000000..9470ec452
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentHashMap$Values.h
@@ -0,0 +1,27 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentHashMap$Values__
+#define __java_util_concurrent_ConcurrentHashMap$Values__
+
+#pragma interface
+
+#include <java/util/AbstractCollection.h>
+
+class java::util::concurrent::ConcurrentHashMap$Values : public ::java::util::AbstractCollection
+{
+
+public: // actually package-private
+ ConcurrentHashMap$Values(::java::util::concurrent::ConcurrentHashMap *);
+public:
+ ::java::util::Iterator * iterator();
+ jint size();
+ jboolean contains(::java::lang::Object *);
+ void clear();
+public: // actually package-private
+ ::java::util::concurrent::ConcurrentHashMap * __attribute__((aligned(__alignof__( ::java::util::AbstractCollection)))) this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentHashMap$Values__
diff --git a/libjava/java/util/concurrent/ConcurrentHashMap$WriteThroughEntry.h b/libjava/java/util/concurrent/ConcurrentHashMap$WriteThroughEntry.h
new file mode 100644
index 000000000..9c7398ee9
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentHashMap$WriteThroughEntry.h
@@ -0,0 +1,24 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentHashMap$WriteThroughEntry__
+#define __java_util_concurrent_ConcurrentHashMap$WriteThroughEntry__
+
+#pragma interface
+
+#include <java/util/AbstractMap$SimpleEntry.h>
+
+class java::util::concurrent::ConcurrentHashMap$WriteThroughEntry : public ::java::util::AbstractMap$SimpleEntry
+{
+
+public: // actually package-private
+ ConcurrentHashMap$WriteThroughEntry(::java::util::concurrent::ConcurrentHashMap *, ::java::lang::Object *, ::java::lang::Object *);
+public:
+ ::java::lang::Object * setValue(::java::lang::Object *);
+public: // actually package-private
+ ::java::util::concurrent::ConcurrentHashMap * __attribute__((aligned(__alignof__( ::java::util::AbstractMap$SimpleEntry)))) this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentHashMap$WriteThroughEntry__
diff --git a/libjava/java/util/concurrent/ConcurrentHashMap.h b/libjava/java/util/concurrent/ConcurrentHashMap.h
new file mode 100644
index 000000000..0e733c065
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentHashMap.h
@@ -0,0 +1,65 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentHashMap__
+#define __java_util_concurrent_ConcurrentHashMap__
+
+#pragma interface
+
+#include <java/util/AbstractMap.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::ConcurrentHashMap : public ::java::util::AbstractMap
+{
+
+ static jint hash(jint);
+public: // actually package-private
+ virtual ::java::util::concurrent::ConcurrentHashMap$Segment * segmentFor(jint);
+public:
+ ConcurrentHashMap(jint, jfloat, jint);
+ ConcurrentHashMap(jint, jfloat);
+ ConcurrentHashMap(jint);
+ ConcurrentHashMap();
+ ConcurrentHashMap(::java::util::Map *);
+ virtual jboolean isEmpty();
+ virtual jint size();
+ virtual ::java::lang::Object * get(::java::lang::Object *);
+ virtual jboolean containsKey(::java::lang::Object *);
+ virtual jboolean containsValue(::java::lang::Object *);
+ virtual jboolean contains(::java::lang::Object *);
+ virtual ::java::lang::Object * put(::java::lang::Object *, ::java::lang::Object *);
+ virtual ::java::lang::Object * putIfAbsent(::java::lang::Object *, ::java::lang::Object *);
+ virtual void putAll(::java::util::Map *);
+ virtual ::java::lang::Object * remove(::java::lang::Object *);
+ virtual jboolean remove(::java::lang::Object *, ::java::lang::Object *);
+ virtual jboolean replace(::java::lang::Object *, ::java::lang::Object *, ::java::lang::Object *);
+ virtual ::java::lang::Object * replace(::java::lang::Object *, ::java::lang::Object *);
+ virtual void clear();
+ virtual ::java::util::Set * keySet();
+ virtual ::java::util::Collection * values();
+ virtual ::java::util::Set * entrySet();
+ virtual ::java::util::Enumeration * keys();
+ virtual ::java::util::Enumeration * elements();
+private:
+ void writeObject(::java::io::ObjectOutputStream *);
+ void readObject(::java::io::ObjectInputStream *);
+ static const jlong serialVersionUID = 7249069246763182397LL;
+public: // actually package-private
+ static const jint DEFAULT_INITIAL_CAPACITY = 16;
+ static jfloat DEFAULT_LOAD_FACTOR;
+ static const jint DEFAULT_CONCURRENCY_LEVEL = 16;
+ static const jint MAXIMUM_CAPACITY = 1073741824;
+ static const jint MAX_SEGMENTS = 65536;
+ static const jint RETRIES_BEFORE_LOCK = 2;
+ jint __attribute__((aligned(__alignof__( ::java::util::AbstractMap)))) segmentMask;
+ jint segmentShift;
+ JArray< ::java::util::concurrent::ConcurrentHashMap$Segment * > * segments;
+ ::java::util::Set * keySet__;
+ ::java::util::Set * entrySet__;
+ ::java::util::Collection * values__;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentHashMap__
diff --git a/libjava/java/util/concurrent/ConcurrentLinkedQueue$Itr.h b/libjava/java/util/concurrent/ConcurrentLinkedQueue$Itr.h
new file mode 100644
index 000000000..ddf3f7e88
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentLinkedQueue$Itr.h
@@ -0,0 +1,32 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentLinkedQueue$Itr__
+#define __java_util_concurrent_ConcurrentLinkedQueue$Itr__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::ConcurrentLinkedQueue$Itr : public ::java::lang::Object
+{
+
+public: // actually package-private
+ ConcurrentLinkedQueue$Itr(::java::util::concurrent::ConcurrentLinkedQueue *);
+private:
+ ::java::lang::Object * advance();
+public:
+ virtual jboolean hasNext();
+ virtual ::java::lang::Object * next();
+ virtual void remove();
+private:
+ ::java::util::concurrent::ConcurrentLinkedQueue$Node * __attribute__((aligned(__alignof__( ::java::lang::Object)))) nextNode;
+ ::java::lang::Object * nextItem;
+ ::java::util::concurrent::ConcurrentLinkedQueue$Node * lastRet;
+public: // actually package-private
+ ::java::util::concurrent::ConcurrentLinkedQueue * this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentLinkedQueue$Itr__
diff --git a/libjava/java/util/concurrent/ConcurrentLinkedQueue$Node.h b/libjava/java/util/concurrent/ConcurrentLinkedQueue$Node.h
new file mode 100644
index 000000000..af69ba60a
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentLinkedQueue$Node.h
@@ -0,0 +1,32 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentLinkedQueue$Node__
+#define __java_util_concurrent_ConcurrentLinkedQueue$Node__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::ConcurrentLinkedQueue$Node : public ::java::lang::Object
+{
+
+public: // actually package-private
+ ConcurrentLinkedQueue$Node(::java::lang::Object *);
+ ConcurrentLinkedQueue$Node(::java::lang::Object *, ::java::util::concurrent::ConcurrentLinkedQueue$Node *);
+ virtual ::java::lang::Object * getItem();
+ virtual jboolean casItem(::java::lang::Object *, ::java::lang::Object *);
+ virtual void setItem(::java::lang::Object *);
+ virtual ::java::util::concurrent::ConcurrentLinkedQueue$Node * getNext();
+ virtual jboolean casNext(::java::util::concurrent::ConcurrentLinkedQueue$Node *, ::java::util::concurrent::ConcurrentLinkedQueue$Node *);
+ virtual void setNext(::java::util::concurrent::ConcurrentLinkedQueue$Node *);
+private:
+ ::java::lang::Object * volatile __attribute__((aligned(__alignof__( ::java::lang::Object)))) item;
+ ::java::util::concurrent::ConcurrentLinkedQueue$Node * volatile next;
+ static ::java::util::concurrent::atomic::AtomicReferenceFieldUpdater * nextUpdater;
+ static ::java::util::concurrent::atomic::AtomicReferenceFieldUpdater * itemUpdater;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentLinkedQueue$Node__
diff --git a/libjava/java/util/concurrent/ConcurrentLinkedQueue.h b/libjava/java/util/concurrent/ConcurrentLinkedQueue.h
new file mode 100644
index 000000000..512bc0e07
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentLinkedQueue.h
@@ -0,0 +1,43 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentLinkedQueue__
+#define __java_util_concurrent_ConcurrentLinkedQueue__
+
+#pragma interface
+
+#include <java/util/AbstractQueue.h>
+
+class java::util::concurrent::ConcurrentLinkedQueue : public ::java::util::AbstractQueue
+{
+
+ jboolean casTail(::java::util::concurrent::ConcurrentLinkedQueue$Node *, ::java::util::concurrent::ConcurrentLinkedQueue$Node *);
+ jboolean casHead(::java::util::concurrent::ConcurrentLinkedQueue$Node *, ::java::util::concurrent::ConcurrentLinkedQueue$Node *);
+public:
+ ConcurrentLinkedQueue();
+ ConcurrentLinkedQueue(::java::util::Collection *);
+ virtual jboolean add(::java::lang::Object *);
+ virtual jboolean offer(::java::lang::Object *);
+ virtual ::java::lang::Object * poll();
+ virtual ::java::lang::Object * peek();
+public: // actually package-private
+ virtual ::java::util::concurrent::ConcurrentLinkedQueue$Node * first();
+public:
+ virtual jboolean isEmpty();
+ virtual jint size();
+ virtual jboolean contains(::java::lang::Object *);
+ virtual jboolean remove(::java::lang::Object *);
+ virtual ::java::util::Iterator * iterator();
+private:
+ void writeObject(::java::io::ObjectOutputStream *);
+ void readObject(::java::io::ObjectInputStream *);
+ static const jlong serialVersionUID = 196745693267521676LL;
+ static ::java::util::concurrent::atomic::AtomicReferenceFieldUpdater * tailUpdater;
+ static ::java::util::concurrent::atomic::AtomicReferenceFieldUpdater * headUpdater;
+ ::java::util::concurrent::ConcurrentLinkedQueue$Node * volatile __attribute__((aligned(__alignof__( ::java::util::AbstractQueue)))) head;
+ ::java::util::concurrent::ConcurrentLinkedQueue$Node * volatile tail;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentLinkedQueue__
diff --git a/libjava/java/util/concurrent/ConcurrentMap.h b/libjava/java/util/concurrent/ConcurrentMap.h
new file mode 100644
index 000000000..a3357e304
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentMap.h
@@ -0,0 +1,34 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentMap__
+#define __java_util_concurrent_ConcurrentMap__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::ConcurrentMap : public ::java::lang::Object
+{
+
+public:
+ virtual ::java::lang::Object * putIfAbsent(::java::lang::Object *, ::java::lang::Object *) = 0;
+ virtual jboolean remove(::java::lang::Object *, ::java::lang::Object *) = 0;
+ virtual jboolean replace(::java::lang::Object *, ::java::lang::Object *, ::java::lang::Object *) = 0;
+ virtual ::java::lang::Object * replace(::java::lang::Object *, ::java::lang::Object *) = 0;
+ virtual void clear() = 0;
+ virtual jboolean containsKey(::java::lang::Object *) = 0;
+ virtual jboolean containsValue(::java::lang::Object *) = 0;
+ virtual ::java::util::Set * entrySet() = 0;
+ virtual ::java::lang::Object * get(::java::lang::Object *) = 0;
+ virtual ::java::lang::Object * put(::java::lang::Object *, ::java::lang::Object *) = 0;
+ virtual jboolean isEmpty() = 0;
+ virtual ::java::util::Set * keySet() = 0;
+ virtual void putAll(::java::util::Map *) = 0;
+ virtual ::java::lang::Object * remove(::java::lang::Object *) = 0;
+ virtual jint size() = 0;
+ virtual ::java::util::Collection * values() = 0;
+ static ::java::lang::Class class$;
+} __attribute__ ((java_interface));
+
+#endif // __java_util_concurrent_ConcurrentMap__
diff --git a/libjava/java/util/concurrent/ConcurrentNavigableMap.h b/libjava/java/util/concurrent/ConcurrentNavigableMap.h
new file mode 100644
index 000000000..68f4d01c9
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentNavigableMap.h
@@ -0,0 +1,66 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentNavigableMap__
+#define __java_util_concurrent_ConcurrentNavigableMap__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::ConcurrentNavigableMap : public ::java::lang::Object
+{
+
+public:
+ virtual ::java::util::concurrent::ConcurrentNavigableMap * subMap(::java::lang::Object *, jboolean, ::java::lang::Object *, jboolean) = 0;
+ virtual ::java::util::concurrent::ConcurrentNavigableMap * headMap(::java::lang::Object *, jboolean) = 0;
+ virtual ::java::util::concurrent::ConcurrentNavigableMap * tailMap(::java::lang::Object *, jboolean) = 0;
+ virtual ::java::util::concurrent::ConcurrentNavigableMap * subMap(::java::lang::Object *, ::java::lang::Object *) = 0;
+ virtual ::java::util::concurrent::ConcurrentNavigableMap * headMap(::java::lang::Object *) = 0;
+ virtual ::java::util::concurrent::ConcurrentNavigableMap * tailMap(::java::lang::Object *) = 0;
+ virtual ::java::util::concurrent::ConcurrentNavigableMap * descendingMap() = 0;
+ virtual ::java::util::NavigableSet * navigableKeySet() = 0;
+ virtual ::java::util::NavigableSet * keySet() = 0;
+ virtual ::java::util::NavigableSet * descendingKeySet() = 0;
+ virtual ::java::lang::Object * putIfAbsent(::java::lang::Object *, ::java::lang::Object *) = 0;
+ virtual jboolean remove(::java::lang::Object *, ::java::lang::Object *) = 0;
+ virtual jboolean replace(::java::lang::Object *, ::java::lang::Object *, ::java::lang::Object *) = 0;
+ virtual ::java::lang::Object * replace(::java::lang::Object *, ::java::lang::Object *) = 0;
+ virtual void clear() = 0;
+ virtual jboolean containsKey(::java::lang::Object *) = 0;
+ virtual jboolean containsValue(::java::lang::Object *) = 0;
+ virtual ::java::util::Set * entrySet() = 0;
+ virtual ::java::lang::Object * get(::java::lang::Object *) = 0;
+ virtual ::java::lang::Object * put(::java::lang::Object *, ::java::lang::Object *) = 0;
+ virtual jboolean isEmpty() = 0;
+ virtual ::java::util::Set * keySet() = 0;
+ virtual void putAll(::java::util::Map *) = 0;
+ virtual ::java::lang::Object * remove(::java::lang::Object *) = 0;
+ virtual jint size() = 0;
+ virtual ::java::util::Collection * values() = 0;
+ virtual ::java::util::Map$Entry * lowerEntry(::java::lang::Object *) = 0;
+ virtual ::java::lang::Object * lowerKey(::java::lang::Object *) = 0;
+ virtual ::java::util::Map$Entry * floorEntry(::java::lang::Object *) = 0;
+ virtual ::java::lang::Object * floorKey(::java::lang::Object *) = 0;
+ virtual ::java::util::Map$Entry * ceilingEntry(::java::lang::Object *) = 0;
+ virtual ::java::lang::Object * ceilingKey(::java::lang::Object *) = 0;
+ virtual ::java::util::Map$Entry * higherEntry(::java::lang::Object *) = 0;
+ virtual ::java::lang::Object * higherKey(::java::lang::Object *) = 0;
+ virtual ::java::util::Map$Entry * firstEntry() = 0;
+ virtual ::java::util::Map$Entry * lastEntry() = 0;
+ virtual ::java::util::Map$Entry * pollFirstEntry() = 0;
+ virtual ::java::util::Map$Entry * pollLastEntry() = 0;
+ virtual ::java::util::NavigableMap * descendingMap() = 0;
+ virtual ::java::util::NavigableMap * subMap(::java::lang::Object *, jboolean, ::java::lang::Object *, jboolean) = 0;
+ virtual ::java::util::NavigableMap * headMap(::java::lang::Object *, jboolean) = 0;
+ virtual ::java::util::NavigableMap * tailMap(::java::lang::Object *, jboolean) = 0;
+ virtual ::java::util::SortedMap * subMap(::java::lang::Object *, ::java::lang::Object *) = 0;
+ virtual ::java::util::SortedMap * headMap(::java::lang::Object *) = 0;
+ virtual ::java::util::SortedMap * tailMap(::java::lang::Object *) = 0;
+ virtual ::java::util::Comparator * comparator() = 0;
+ virtual ::java::lang::Object * firstKey() = 0;
+ virtual ::java::lang::Object * lastKey() = 0;
+ static ::java::lang::Class class$;
+} __attribute__ ((java_interface));
+
+#endif // __java_util_concurrent_ConcurrentNavigableMap__
diff --git a/libjava/java/util/concurrent/ConcurrentSkipListMap$ComparableUsingComparator.h b/libjava/java/util/concurrent/ConcurrentSkipListMap$ComparableUsingComparator.h
new file mode 100644
index 000000000..b64afd554
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentSkipListMap$ComparableUsingComparator.h
@@ -0,0 +1,25 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentSkipListMap$ComparableUsingComparator__
+#define __java_util_concurrent_ConcurrentSkipListMap$ComparableUsingComparator__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::ConcurrentSkipListMap$ComparableUsingComparator : public ::java::lang::Object
+{
+
+public: // actually package-private
+ ConcurrentSkipListMap$ComparableUsingComparator(::java::lang::Object *, ::java::util::Comparator *);
+public:
+ jint compareTo(::java::lang::Object *);
+public: // actually package-private
+ ::java::lang::Object * __attribute__((aligned(__alignof__( ::java::lang::Object)))) actualKey;
+ ::java::util::Comparator * cmp;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentSkipListMap$ComparableUsingComparator__
diff --git a/libjava/java/util/concurrent/ConcurrentSkipListMap$EntryIterator.h b/libjava/java/util/concurrent/ConcurrentSkipListMap$EntryIterator.h
new file mode 100644
index 000000000..67d71928f
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentSkipListMap$EntryIterator.h
@@ -0,0 +1,25 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentSkipListMap$EntryIterator__
+#define __java_util_concurrent_ConcurrentSkipListMap$EntryIterator__
+
+#pragma interface
+
+#include <java/util/concurrent/ConcurrentSkipListMap$Iter.h>
+
+class java::util::concurrent::ConcurrentSkipListMap$EntryIterator : public ::java::util::concurrent::ConcurrentSkipListMap$Iter
+{
+
+public: // actually package-private
+ ConcurrentSkipListMap$EntryIterator(::java::util::concurrent::ConcurrentSkipListMap *);
+public:
+ ::java::util::Map$Entry * ConcurrentSkipListMap$EntryIterator$next();
+ ::java::lang::Object * next();
+public: // actually package-private
+ ::java::util::concurrent::ConcurrentSkipListMap * __attribute__((aligned(__alignof__( ::java::util::concurrent::ConcurrentSkipListMap$Iter)))) this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentSkipListMap$EntryIterator__
diff --git a/libjava/java/util/concurrent/ConcurrentSkipListMap$EntrySet.h b/libjava/java/util/concurrent/ConcurrentSkipListMap$EntrySet.h
new file mode 100644
index 000000000..e235ffc8d
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentSkipListMap$EntrySet.h
@@ -0,0 +1,34 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentSkipListMap$EntrySet__
+#define __java_util_concurrent_ConcurrentSkipListMap$EntrySet__
+
+#pragma interface
+
+#include <java/util/AbstractSet.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::ConcurrentSkipListMap$EntrySet : public ::java::util::AbstractSet
+{
+
+public: // actually package-private
+ ConcurrentSkipListMap$EntrySet(::java::util::concurrent::ConcurrentNavigableMap *);
+public:
+ ::java::util::Iterator * iterator();
+ jboolean contains(::java::lang::Object *);
+ jboolean remove(::java::lang::Object *);
+ jboolean isEmpty();
+ jint size();
+ void clear();
+ jboolean equals(::java::lang::Object *);
+ JArray< ::java::lang::Object * > * toArray();
+ JArray< ::java::lang::Object * > * toArray(JArray< ::java::lang::Object * > *);
+private:
+ ::java::util::concurrent::ConcurrentNavigableMap * __attribute__((aligned(__alignof__( ::java::util::AbstractSet)))) m;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentSkipListMap$EntrySet__
diff --git a/libjava/java/util/concurrent/ConcurrentSkipListMap$HeadIndex.h b/libjava/java/util/concurrent/ConcurrentSkipListMap$HeadIndex.h
new file mode 100644
index 000000000..f20214ce6
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentSkipListMap$HeadIndex.h
@@ -0,0 +1,21 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentSkipListMap$HeadIndex__
+#define __java_util_concurrent_ConcurrentSkipListMap$HeadIndex__
+
+#pragma interface
+
+#include <java/util/concurrent/ConcurrentSkipListMap$Index.h>
+
+class java::util::concurrent::ConcurrentSkipListMap$HeadIndex : public ::java::util::concurrent::ConcurrentSkipListMap$Index
+{
+
+public: // actually package-private
+ ConcurrentSkipListMap$HeadIndex(::java::util::concurrent::ConcurrentSkipListMap$Node *, ::java::util::concurrent::ConcurrentSkipListMap$Index *, ::java::util::concurrent::ConcurrentSkipListMap$Index *, jint);
+ jint __attribute__((aligned(__alignof__( ::java::util::concurrent::ConcurrentSkipListMap$Index)))) level;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentSkipListMap$HeadIndex__
diff --git a/libjava/java/util/concurrent/ConcurrentSkipListMap$Index.h b/libjava/java/util/concurrent/ConcurrentSkipListMap$Index.h
new file mode 100644
index 000000000..629cff881
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentSkipListMap$Index.h
@@ -0,0 +1,28 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentSkipListMap$Index__
+#define __java_util_concurrent_ConcurrentSkipListMap$Index__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::ConcurrentSkipListMap$Index : public ::java::lang::Object
+{
+
+public: // actually package-private
+ ConcurrentSkipListMap$Index(::java::util::concurrent::ConcurrentSkipListMap$Node *, ::java::util::concurrent::ConcurrentSkipListMap$Index *, ::java::util::concurrent::ConcurrentSkipListMap$Index *);
+ virtual jboolean casRight(::java::util::concurrent::ConcurrentSkipListMap$Index *, ::java::util::concurrent::ConcurrentSkipListMap$Index *);
+ virtual jboolean indexesDeletedNode();
+ virtual jboolean link(::java::util::concurrent::ConcurrentSkipListMap$Index *, ::java::util::concurrent::ConcurrentSkipListMap$Index *);
+ virtual jboolean unlink(::java::util::concurrent::ConcurrentSkipListMap$Index *);
+ ::java::util::concurrent::ConcurrentSkipListMap$Node * __attribute__((aligned(__alignof__( ::java::lang::Object)))) node;
+ ::java::util::concurrent::ConcurrentSkipListMap$Index * down;
+ ::java::util::concurrent::ConcurrentSkipListMap$Index * volatile right;
+ static ::java::util::concurrent::atomic::AtomicReferenceFieldUpdater * rightUpdater;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentSkipListMap$Index__
diff --git a/libjava/java/util/concurrent/ConcurrentSkipListMap$Iter.h b/libjava/java/util/concurrent/ConcurrentSkipListMap$Iter.h
new file mode 100644
index 000000000..f9170b317
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentSkipListMap$Iter.h
@@ -0,0 +1,32 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentSkipListMap$Iter__
+#define __java_util_concurrent_ConcurrentSkipListMap$Iter__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::ConcurrentSkipListMap$Iter : public ::java::lang::Object
+{
+
+public: // actually package-private
+ ConcurrentSkipListMap$Iter(::java::util::concurrent::ConcurrentSkipListMap *);
+public:
+ virtual jboolean hasNext();
+public: // actually package-private
+ virtual void advance();
+public:
+ virtual void remove();
+ virtual ::java::lang::Object * next() = 0;
+public: // actually package-private
+ ::java::util::concurrent::ConcurrentSkipListMap$Node * __attribute__((aligned(__alignof__( ::java::lang::Object)))) lastReturned;
+ ::java::util::concurrent::ConcurrentSkipListMap$Node * next;
+ ::java::lang::Object * nextValue;
+ ::java::util::concurrent::ConcurrentSkipListMap * this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentSkipListMap$Iter__
diff --git a/libjava/java/util/concurrent/ConcurrentSkipListMap$KeyIterator.h b/libjava/java/util/concurrent/ConcurrentSkipListMap$KeyIterator.h
new file mode 100644
index 000000000..03eb3e84a
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentSkipListMap$KeyIterator.h
@@ -0,0 +1,24 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentSkipListMap$KeyIterator__
+#define __java_util_concurrent_ConcurrentSkipListMap$KeyIterator__
+
+#pragma interface
+
+#include <java/util/concurrent/ConcurrentSkipListMap$Iter.h>
+
+class java::util::concurrent::ConcurrentSkipListMap$KeyIterator : public ::java::util::concurrent::ConcurrentSkipListMap$Iter
+{
+
+public: // actually package-private
+ ConcurrentSkipListMap$KeyIterator(::java::util::concurrent::ConcurrentSkipListMap *);
+public:
+ ::java::lang::Object * next();
+public: // actually package-private
+ ::java::util::concurrent::ConcurrentSkipListMap * __attribute__((aligned(__alignof__( ::java::util::concurrent::ConcurrentSkipListMap$Iter)))) this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentSkipListMap$KeyIterator__
diff --git a/libjava/java/util/concurrent/ConcurrentSkipListMap$KeySet.h b/libjava/java/util/concurrent/ConcurrentSkipListMap$KeySet.h
new file mode 100644
index 000000000..e52b30ea1
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentSkipListMap$KeySet.h
@@ -0,0 +1,54 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentSkipListMap$KeySet__
+#define __java_util_concurrent_ConcurrentSkipListMap$KeySet__
+
+#pragma interface
+
+#include <java/util/AbstractSet.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::ConcurrentSkipListMap$KeySet : public ::java::util::AbstractSet
+{
+
+public: // actually package-private
+ ConcurrentSkipListMap$KeySet(::java::util::concurrent::ConcurrentNavigableMap *);
+public:
+ jint size();
+ jboolean isEmpty();
+ jboolean contains(::java::lang::Object *);
+ jboolean remove(::java::lang::Object *);
+ void clear();
+ ::java::lang::Object * lower(::java::lang::Object *);
+ ::java::lang::Object * floor(::java::lang::Object *);
+ ::java::lang::Object * ceiling(::java::lang::Object *);
+ ::java::lang::Object * higher(::java::lang::Object *);
+ ::java::util::Comparator * comparator();
+ ::java::lang::Object * first();
+ ::java::lang::Object * last();
+ ::java::lang::Object * pollFirst();
+ ::java::lang::Object * pollLast();
+ ::java::util::Iterator * iterator();
+ jboolean equals(::java::lang::Object *);
+ JArray< ::java::lang::Object * > * toArray();
+ JArray< ::java::lang::Object * > * toArray(JArray< ::java::lang::Object * > *);
+ ::java::util::Iterator * descendingIterator();
+ ::java::util::NavigableSet * subSet(::java::lang::Object *, jboolean, ::java::lang::Object *, jboolean);
+ ::java::util::NavigableSet * headSet(::java::lang::Object *, jboolean);
+ ::java::util::NavigableSet * tailSet(::java::lang::Object *, jboolean);
+ ::java::util::NavigableSet * ConcurrentSkipListMap$KeySet$subSet(::java::lang::Object *, ::java::lang::Object *);
+ ::java::util::NavigableSet * ConcurrentSkipListMap$KeySet$headSet(::java::lang::Object *);
+ ::java::util::NavigableSet * ConcurrentSkipListMap$KeySet$tailSet(::java::lang::Object *);
+ ::java::util::NavigableSet * descendingSet();
+ ::java::util::SortedSet * subSet(::java::lang::Object *, ::java::lang::Object *);
+ ::java::util::SortedSet * tailSet(::java::lang::Object *);
+ ::java::util::SortedSet * headSet(::java::lang::Object *);
+private:
+ ::java::util::concurrent::ConcurrentNavigableMap * __attribute__((aligned(__alignof__( ::java::util::AbstractSet)))) m;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentSkipListMap$KeySet__
diff --git a/libjava/java/util/concurrent/ConcurrentSkipListMap$Node.h b/libjava/java/util/concurrent/ConcurrentSkipListMap$Node.h
new file mode 100644
index 000000000..c9d5d890d
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentSkipListMap$Node.h
@@ -0,0 +1,34 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentSkipListMap$Node__
+#define __java_util_concurrent_ConcurrentSkipListMap$Node__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::ConcurrentSkipListMap$Node : public ::java::lang::Object
+{
+
+public: // actually package-private
+ ConcurrentSkipListMap$Node(::java::lang::Object *, ::java::lang::Object *, ::java::util::concurrent::ConcurrentSkipListMap$Node *);
+ ConcurrentSkipListMap$Node(::java::util::concurrent::ConcurrentSkipListMap$Node *);
+ jboolean casValue(::java::lang::Object *, ::java::lang::Object *);
+ jboolean casNext(::java::util::concurrent::ConcurrentSkipListMap$Node *, ::java::util::concurrent::ConcurrentSkipListMap$Node *);
+ jboolean isMarker();
+ jboolean isBaseHeader();
+ jboolean appendMarker(::java::util::concurrent::ConcurrentSkipListMap$Node *);
+ void helpDelete(::java::util::concurrent::ConcurrentSkipListMap$Node *, ::java::util::concurrent::ConcurrentSkipListMap$Node *);
+ ::java::lang::Object * getValidValue();
+ ::java::util::AbstractMap$SimpleImmutableEntry * createSnapshot();
+ ::java::lang::Object * __attribute__((aligned(__alignof__( ::java::lang::Object)))) key;
+ ::java::lang::Object * volatile value;
+ ::java::util::concurrent::ConcurrentSkipListMap$Node * volatile next;
+ static ::java::util::concurrent::atomic::AtomicReferenceFieldUpdater * nextUpdater;
+ static ::java::util::concurrent::atomic::AtomicReferenceFieldUpdater * valueUpdater;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentSkipListMap$Node__
diff --git a/libjava/java/util/concurrent/ConcurrentSkipListMap$SubMap$SubMapEntryIterator.h b/libjava/java/util/concurrent/ConcurrentSkipListMap$SubMap$SubMapEntryIterator.h
new file mode 100644
index 000000000..0c0c9e552
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentSkipListMap$SubMap$SubMapEntryIterator.h
@@ -0,0 +1,25 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentSkipListMap$SubMap$SubMapEntryIterator__
+#define __java_util_concurrent_ConcurrentSkipListMap$SubMap$SubMapEntryIterator__
+
+#pragma interface
+
+#include <java/util/concurrent/ConcurrentSkipListMap$SubMap$SubMapIter.h>
+
+class java::util::concurrent::ConcurrentSkipListMap$SubMap$SubMapEntryIterator : public ::java::util::concurrent::ConcurrentSkipListMap$SubMap$SubMapIter
+{
+
+public: // actually package-private
+ ConcurrentSkipListMap$SubMap$SubMapEntryIterator(::java::util::concurrent::ConcurrentSkipListMap$SubMap *);
+public:
+ ::java::util::Map$Entry * ConcurrentSkipListMap$SubMap$SubMapEntryIterator$next();
+ ::java::lang::Object * next();
+public: // actually package-private
+ ::java::util::concurrent::ConcurrentSkipListMap$SubMap * __attribute__((aligned(__alignof__( ::java::util::concurrent::ConcurrentSkipListMap$SubMap$SubMapIter)))) this$1;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentSkipListMap$SubMap$SubMapEntryIterator__
diff --git a/libjava/java/util/concurrent/ConcurrentSkipListMap$SubMap$SubMapIter.h b/libjava/java/util/concurrent/ConcurrentSkipListMap$SubMap$SubMapIter.h
new file mode 100644
index 000000000..a4f569348
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentSkipListMap$SubMap$SubMapIter.h
@@ -0,0 +1,35 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentSkipListMap$SubMap$SubMapIter__
+#define __java_util_concurrent_ConcurrentSkipListMap$SubMap$SubMapIter__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::ConcurrentSkipListMap$SubMap$SubMapIter : public ::java::lang::Object
+{
+
+public: // actually package-private
+ ConcurrentSkipListMap$SubMap$SubMapIter(::java::util::concurrent::ConcurrentSkipListMap$SubMap *);
+public:
+ virtual jboolean hasNext();
+public: // actually package-private
+ virtual void advance();
+private:
+ void ascend();
+ void descend();
+public:
+ virtual void remove();
+ virtual ::java::lang::Object * next() = 0;
+public: // actually package-private
+ ::java::util::concurrent::ConcurrentSkipListMap$Node * __attribute__((aligned(__alignof__( ::java::lang::Object)))) lastReturned;
+ ::java::util::concurrent::ConcurrentSkipListMap$Node * next;
+ ::java::lang::Object * nextValue;
+ ::java::util::concurrent::ConcurrentSkipListMap$SubMap * this$1;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentSkipListMap$SubMap$SubMapIter__
diff --git a/libjava/java/util/concurrent/ConcurrentSkipListMap$SubMap$SubMapKeyIterator.h b/libjava/java/util/concurrent/ConcurrentSkipListMap$SubMap$SubMapKeyIterator.h
new file mode 100644
index 000000000..5af0bca1d
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentSkipListMap$SubMap$SubMapKeyIterator.h
@@ -0,0 +1,24 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentSkipListMap$SubMap$SubMapKeyIterator__
+#define __java_util_concurrent_ConcurrentSkipListMap$SubMap$SubMapKeyIterator__
+
+#pragma interface
+
+#include <java/util/concurrent/ConcurrentSkipListMap$SubMap$SubMapIter.h>
+
+class java::util::concurrent::ConcurrentSkipListMap$SubMap$SubMapKeyIterator : public ::java::util::concurrent::ConcurrentSkipListMap$SubMap$SubMapIter
+{
+
+public: // actually package-private
+ ConcurrentSkipListMap$SubMap$SubMapKeyIterator(::java::util::concurrent::ConcurrentSkipListMap$SubMap *);
+public:
+ ::java::lang::Object * next();
+public: // actually package-private
+ ::java::util::concurrent::ConcurrentSkipListMap$SubMap * __attribute__((aligned(__alignof__( ::java::util::concurrent::ConcurrentSkipListMap$SubMap$SubMapIter)))) this$1;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentSkipListMap$SubMap$SubMapKeyIterator__
diff --git a/libjava/java/util/concurrent/ConcurrentSkipListMap$SubMap$SubMapValueIterator.h b/libjava/java/util/concurrent/ConcurrentSkipListMap$SubMap$SubMapValueIterator.h
new file mode 100644
index 000000000..deefc73c9
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentSkipListMap$SubMap$SubMapValueIterator.h
@@ -0,0 +1,24 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentSkipListMap$SubMap$SubMapValueIterator__
+#define __java_util_concurrent_ConcurrentSkipListMap$SubMap$SubMapValueIterator__
+
+#pragma interface
+
+#include <java/util/concurrent/ConcurrentSkipListMap$SubMap$SubMapIter.h>
+
+class java::util::concurrent::ConcurrentSkipListMap$SubMap$SubMapValueIterator : public ::java::util::concurrent::ConcurrentSkipListMap$SubMap$SubMapIter
+{
+
+public: // actually package-private
+ ConcurrentSkipListMap$SubMap$SubMapValueIterator(::java::util::concurrent::ConcurrentSkipListMap$SubMap *);
+public:
+ ::java::lang::Object * next();
+public: // actually package-private
+ ::java::util::concurrent::ConcurrentSkipListMap$SubMap * __attribute__((aligned(__alignof__( ::java::util::concurrent::ConcurrentSkipListMap$SubMap$SubMapIter)))) this$1;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentSkipListMap$SubMap$SubMapValueIterator__
diff --git a/libjava/java/util/concurrent/ConcurrentSkipListMap$SubMap.h b/libjava/java/util/concurrent/ConcurrentSkipListMap$SubMap.h
new file mode 100644
index 000000000..345fb2551
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentSkipListMap$SubMap.h
@@ -0,0 +1,118 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentSkipListMap$SubMap__
+#define __java_util_concurrent_ConcurrentSkipListMap$SubMap__
+
+#pragma interface
+
+#include <java/util/AbstractMap.h>
+
+class java::util::concurrent::ConcurrentSkipListMap$SubMap : public ::java::util::AbstractMap
+{
+
+public: // actually package-private
+ ConcurrentSkipListMap$SubMap(::java::util::concurrent::ConcurrentSkipListMap *, ::java::lang::Object *, jboolean, ::java::lang::Object *, jboolean, jboolean);
+private:
+ jboolean tooLow(::java::lang::Object *);
+ jboolean tooHigh(::java::lang::Object *);
+ jboolean inBounds(::java::lang::Object *);
+ void checkKeyBounds(::java::lang::Object *);
+ jboolean isBeforeEnd(::java::util::concurrent::ConcurrentSkipListMap$Node *);
+ ::java::util::concurrent::ConcurrentSkipListMap$Node * loNode();
+ ::java::util::concurrent::ConcurrentSkipListMap$Node * hiNode();
+ ::java::lang::Object * lowestKey();
+ ::java::lang::Object * highestKey();
+ ::java::util::Map$Entry * lowestEntry();
+ ::java::util::Map$Entry * highestEntry();
+ ::java::util::Map$Entry * removeLowest();
+ ::java::util::Map$Entry * removeHighest();
+ ::java::util::Map$Entry * getNearEntry(::java::lang::Object *, jint);
+ ::java::lang::Object * getNearKey(::java::lang::Object *, jint);
+public:
+ jboolean containsKey(::java::lang::Object *);
+ ::java::lang::Object * get(::java::lang::Object *);
+ ::java::lang::Object * put(::java::lang::Object *, ::java::lang::Object *);
+ ::java::lang::Object * remove(::java::lang::Object *);
+ jint size();
+ jboolean isEmpty();
+ jboolean containsValue(::java::lang::Object *);
+ void clear();
+ ::java::lang::Object * putIfAbsent(::java::lang::Object *, ::java::lang::Object *);
+ jboolean remove(::java::lang::Object *, ::java::lang::Object *);
+ jboolean replace(::java::lang::Object *, ::java::lang::Object *, ::java::lang::Object *);
+ ::java::lang::Object * replace(::java::lang::Object *, ::java::lang::Object *);
+ ::java::util::Comparator * comparator();
+private:
+ ::java::util::concurrent::ConcurrentSkipListMap$SubMap * newSubMap(::java::lang::Object *, jboolean, ::java::lang::Object *, jboolean);
+public:
+ ::java::util::concurrent::ConcurrentSkipListMap$SubMap * ConcurrentSkipListMap$SubMap$subMap(::java::lang::Object *, jboolean, ::java::lang::Object *, jboolean);
+ ::java::util::concurrent::ConcurrentSkipListMap$SubMap * ConcurrentSkipListMap$SubMap$headMap(::java::lang::Object *, jboolean);
+ ::java::util::concurrent::ConcurrentSkipListMap$SubMap * ConcurrentSkipListMap$SubMap$tailMap(::java::lang::Object *, jboolean);
+ ::java::util::concurrent::ConcurrentSkipListMap$SubMap * ConcurrentSkipListMap$SubMap$subMap(::java::lang::Object *, ::java::lang::Object *);
+ ::java::util::concurrent::ConcurrentSkipListMap$SubMap * ConcurrentSkipListMap$SubMap$headMap(::java::lang::Object *);
+ ::java::util::concurrent::ConcurrentSkipListMap$SubMap * ConcurrentSkipListMap$SubMap$tailMap(::java::lang::Object *);
+ ::java::util::concurrent::ConcurrentSkipListMap$SubMap * ConcurrentSkipListMap$SubMap$descendingMap();
+ ::java::util::Map$Entry * ceilingEntry(::java::lang::Object *);
+ ::java::lang::Object * ceilingKey(::java::lang::Object *);
+ ::java::util::Map$Entry * lowerEntry(::java::lang::Object *);
+ ::java::lang::Object * lowerKey(::java::lang::Object *);
+ ::java::util::Map$Entry * floorEntry(::java::lang::Object *);
+ ::java::lang::Object * floorKey(::java::lang::Object *);
+ ::java::util::Map$Entry * higherEntry(::java::lang::Object *);
+ ::java::lang::Object * higherKey(::java::lang::Object *);
+ ::java::lang::Object * firstKey();
+ ::java::lang::Object * lastKey();
+ ::java::util::Map$Entry * firstEntry();
+ ::java::util::Map$Entry * lastEntry();
+ ::java::util::Map$Entry * pollFirstEntry();
+ ::java::util::Map$Entry * pollLastEntry();
+ ::java::util::NavigableSet * ConcurrentSkipListMap$SubMap$keySet();
+ ::java::util::NavigableSet * navigableKeySet();
+ ::java::util::Collection * values();
+ ::java::util::Set * entrySet();
+ ::java::util::NavigableSet * descendingKeySet();
+public: // actually package-private
+ ::java::util::Iterator * keyIterator();
+ ::java::util::Iterator * valueIterator();
+ ::java::util::Iterator * entryIterator();
+public:
+ ::java::util::SortedMap * subMap(::java::lang::Object *, ::java::lang::Object *);
+ ::java::util::concurrent::ConcurrentNavigableMap * subMap(::java::lang::Object *, ::java::lang::Object *);
+ ::java::util::NavigableMap * subMap(::java::lang::Object *, jboolean, ::java::lang::Object *, jboolean);
+ ::java::util::concurrent::ConcurrentNavigableMap * subMap(::java::lang::Object *, jboolean, ::java::lang::Object *, jboolean);
+ ::java::util::SortedMap * tailMap(::java::lang::Object *);
+ ::java::util::concurrent::ConcurrentNavigableMap * tailMap(::java::lang::Object *);
+ ::java::util::NavigableMap * tailMap(::java::lang::Object *, jboolean);
+ ::java::util::concurrent::ConcurrentNavigableMap * tailMap(::java::lang::Object *, jboolean);
+ ::java::util::SortedMap * headMap(::java::lang::Object *);
+ ::java::util::concurrent::ConcurrentNavigableMap * headMap(::java::lang::Object *);
+ ::java::util::NavigableMap * headMap(::java::lang::Object *, jboolean);
+ ::java::util::concurrent::ConcurrentNavigableMap * headMap(::java::lang::Object *, jboolean);
+ ::java::util::Set * keySet();
+ ::java::util::NavigableMap * descendingMap();
+ ::java::util::concurrent::ConcurrentNavigableMap * descendingMap();
+public: // actually package-private
+ static jboolean access$15(::java::util::concurrent::ConcurrentSkipListMap$SubMap *);
+ static ::java::util::concurrent::ConcurrentSkipListMap$Node * access$16(::java::util::concurrent::ConcurrentSkipListMap$SubMap *);
+ static ::java::util::concurrent::ConcurrentSkipListMap$Node * access$17(::java::util::concurrent::ConcurrentSkipListMap$SubMap *);
+ static jboolean access$18(::java::util::concurrent::ConcurrentSkipListMap$SubMap *, ::java::lang::Object *);
+ static jboolean access$19(::java::util::concurrent::ConcurrentSkipListMap$SubMap *, ::java::lang::Object *);
+ static ::java::util::concurrent::ConcurrentSkipListMap * access$20(::java::util::concurrent::ConcurrentSkipListMap$SubMap *);
+ static jboolean access$21(::java::util::concurrent::ConcurrentSkipListMap$SubMap *, ::java::lang::Object *);
+private:
+ static const jlong serialVersionUID = -7647078645895051609LL;
+ ::java::util::concurrent::ConcurrentSkipListMap * __attribute__((aligned(__alignof__( ::java::util::AbstractMap)))) m;
+ ::java::lang::Object * lo;
+ ::java::lang::Object * hi;
+ jboolean loInclusive;
+ jboolean hiInclusive;
+ jboolean isDescending;
+ ::java::util::concurrent::ConcurrentSkipListMap$KeySet * keySetView;
+ ::java::util::Set * entrySetView;
+ ::java::util::Collection * valuesView;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentSkipListMap$SubMap__
diff --git a/libjava/java/util/concurrent/ConcurrentSkipListMap$ValueIterator.h b/libjava/java/util/concurrent/ConcurrentSkipListMap$ValueIterator.h
new file mode 100644
index 000000000..fa671d814
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentSkipListMap$ValueIterator.h
@@ -0,0 +1,24 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentSkipListMap$ValueIterator__
+#define __java_util_concurrent_ConcurrentSkipListMap$ValueIterator__
+
+#pragma interface
+
+#include <java/util/concurrent/ConcurrentSkipListMap$Iter.h>
+
+class java::util::concurrent::ConcurrentSkipListMap$ValueIterator : public ::java::util::concurrent::ConcurrentSkipListMap$Iter
+{
+
+public: // actually package-private
+ ConcurrentSkipListMap$ValueIterator(::java::util::concurrent::ConcurrentSkipListMap *);
+public:
+ ::java::lang::Object * next();
+public: // actually package-private
+ ::java::util::concurrent::ConcurrentSkipListMap * __attribute__((aligned(__alignof__( ::java::util::concurrent::ConcurrentSkipListMap$Iter)))) this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentSkipListMap$ValueIterator__
diff --git a/libjava/java/util/concurrent/ConcurrentSkipListMap$Values.h b/libjava/java/util/concurrent/ConcurrentSkipListMap$Values.h
new file mode 100644
index 000000000..1fc3b1b8e
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentSkipListMap$Values.h
@@ -0,0 +1,32 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentSkipListMap$Values__
+#define __java_util_concurrent_ConcurrentSkipListMap$Values__
+
+#pragma interface
+
+#include <java/util/AbstractCollection.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::ConcurrentSkipListMap$Values : public ::java::util::AbstractCollection
+{
+
+public: // actually package-private
+ ConcurrentSkipListMap$Values(::java::util::concurrent::ConcurrentNavigableMap *);
+public:
+ ::java::util::Iterator * iterator();
+ jboolean isEmpty();
+ jint size();
+ jboolean contains(::java::lang::Object *);
+ void clear();
+ JArray< ::java::lang::Object * > * toArray();
+ JArray< ::java::lang::Object * > * toArray(JArray< ::java::lang::Object * > *);
+private:
+ ::java::util::concurrent::ConcurrentNavigableMap * __attribute__((aligned(__alignof__( ::java::util::AbstractCollection)))) m;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentSkipListMap$Values__
diff --git a/libjava/java/util/concurrent/ConcurrentSkipListMap.h b/libjava/java/util/concurrent/ConcurrentSkipListMap.h
new file mode 100644
index 000000000..2f4da898b
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentSkipListMap.h
@@ -0,0 +1,136 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentSkipListMap__
+#define __java_util_concurrent_ConcurrentSkipListMap__
+
+#pragma interface
+
+#include <java/util/AbstractMap.h>
+
+class java::util::concurrent::ConcurrentSkipListMap : public ::java::util::AbstractMap
+{
+
+public: // actually package-private
+ virtual void initialize();
+private:
+ jboolean casHead(::java::util::concurrent::ConcurrentSkipListMap$HeadIndex *, ::java::util::concurrent::ConcurrentSkipListMap$HeadIndex *);
+ ::java::lang::Comparable * comparable(::java::lang::Object *);
+public: // actually package-private
+ virtual jint compare(::java::lang::Object *, ::java::lang::Object *);
+ virtual jboolean inHalfOpenRange(::java::lang::Object *, ::java::lang::Object *, ::java::lang::Object *);
+ virtual jboolean inOpenRange(::java::lang::Object *, ::java::lang::Object *, ::java::lang::Object *);
+private:
+ ::java::util::concurrent::ConcurrentSkipListMap$Node * findPredecessor(::java::lang::Comparable *);
+ ::java::util::concurrent::ConcurrentSkipListMap$Node * findNode(::java::lang::Comparable *);
+ ::java::lang::Object * doGet(::java::lang::Object *);
+ ::java::lang::Object * getUsingFindNode(::java::lang::Comparable *);
+ ::java::lang::Object * doPut(::java::lang::Object *, ::java::lang::Object *, jboolean);
+ jint randomLevel();
+ void insertIndex(::java::util::concurrent::ConcurrentSkipListMap$Node *, jint);
+ void addIndex(::java::util::concurrent::ConcurrentSkipListMap$Index *, ::java::util::concurrent::ConcurrentSkipListMap$HeadIndex *, jint);
+public: // actually package-private
+ virtual ::java::lang::Object * doRemove(::java::lang::Object *, ::java::lang::Object *);
+private:
+ void tryReduceLevel();
+public: // actually package-private
+ virtual ::java::util::concurrent::ConcurrentSkipListMap$Node * findFirst();
+ virtual ::java::util::Map$Entry * doRemoveFirstEntry();
+private:
+ void clearIndexToFirst();
+public: // actually package-private
+ virtual ::java::util::concurrent::ConcurrentSkipListMap$Node * findLast();
+private:
+ ::java::util::concurrent::ConcurrentSkipListMap$Node * findPredecessorOfLast();
+public: // actually package-private
+ virtual ::java::util::Map$Entry * doRemoveLastEntry();
+ virtual ::java::util::concurrent::ConcurrentSkipListMap$Node * findNear(::java::lang::Object *, jint);
+ virtual ::java::util::AbstractMap$SimpleImmutableEntry * getNear(::java::lang::Object *, jint);
+public:
+ ConcurrentSkipListMap();
+ ConcurrentSkipListMap(::java::util::Comparator *);
+ ConcurrentSkipListMap(::java::util::Map *);
+ ConcurrentSkipListMap(::java::util::SortedMap *);
+ virtual ::java::util::concurrent::ConcurrentSkipListMap * ConcurrentSkipListMap$clone();
+private:
+ void buildFromSorted(::java::util::SortedMap *);
+ void writeObject(::java::io::ObjectOutputStream *);
+ void readObject(::java::io::ObjectInputStream *);
+public:
+ virtual jboolean containsKey(::java::lang::Object *);
+ virtual ::java::lang::Object * get(::java::lang::Object *);
+ virtual ::java::lang::Object * put(::java::lang::Object *, ::java::lang::Object *);
+ virtual ::java::lang::Object * remove(::java::lang::Object *);
+ virtual jboolean containsValue(::java::lang::Object *);
+ virtual jint size();
+ virtual jboolean isEmpty();
+ virtual void clear();
+ virtual ::java::util::NavigableSet * ConcurrentSkipListMap$keySet();
+ virtual ::java::util::NavigableSet * navigableKeySet();
+ virtual ::java::util::Collection * values();
+ virtual ::java::util::Set * entrySet();
+ virtual ::java::util::concurrent::ConcurrentNavigableMap * ConcurrentSkipListMap$descendingMap();
+ virtual ::java::util::NavigableSet * descendingKeySet();
+ virtual jboolean equals(::java::lang::Object *);
+ virtual ::java::lang::Object * putIfAbsent(::java::lang::Object *, ::java::lang::Object *);
+ virtual jboolean remove(::java::lang::Object *, ::java::lang::Object *);
+ virtual jboolean replace(::java::lang::Object *, ::java::lang::Object *, ::java::lang::Object *);
+ virtual ::java::lang::Object * replace(::java::lang::Object *, ::java::lang::Object *);
+ virtual ::java::util::Comparator * comparator();
+ virtual ::java::lang::Object * firstKey();
+ virtual ::java::lang::Object * lastKey();
+ virtual ::java::util::concurrent::ConcurrentNavigableMap * ConcurrentSkipListMap$subMap(::java::lang::Object *, jboolean, ::java::lang::Object *, jboolean);
+ virtual ::java::util::concurrent::ConcurrentNavigableMap * ConcurrentSkipListMap$headMap(::java::lang::Object *, jboolean);
+ virtual ::java::util::concurrent::ConcurrentNavigableMap * ConcurrentSkipListMap$tailMap(::java::lang::Object *, jboolean);
+ virtual ::java::util::concurrent::ConcurrentNavigableMap * ConcurrentSkipListMap$subMap(::java::lang::Object *, ::java::lang::Object *);
+ virtual ::java::util::concurrent::ConcurrentNavigableMap * ConcurrentSkipListMap$headMap(::java::lang::Object *);
+ virtual ::java::util::concurrent::ConcurrentNavigableMap * ConcurrentSkipListMap$tailMap(::java::lang::Object *);
+ virtual ::java::util::Map$Entry * lowerEntry(::java::lang::Object *);
+ virtual ::java::lang::Object * lowerKey(::java::lang::Object *);
+ virtual ::java::util::Map$Entry * floorEntry(::java::lang::Object *);
+ virtual ::java::lang::Object * floorKey(::java::lang::Object *);
+ virtual ::java::util::Map$Entry * ceilingEntry(::java::lang::Object *);
+ virtual ::java::lang::Object * ceilingKey(::java::lang::Object *);
+ virtual ::java::util::Map$Entry * higherEntry(::java::lang::Object *);
+ virtual ::java::lang::Object * higherKey(::java::lang::Object *);
+ virtual ::java::util::Map$Entry * firstEntry();
+ virtual ::java::util::Map$Entry * lastEntry();
+ virtual ::java::util::Map$Entry * pollFirstEntry();
+ virtual ::java::util::Map$Entry * pollLastEntry();
+public: // actually package-private
+ virtual ::java::util::Iterator * keyIterator();
+ virtual ::java::util::Iterator * valueIterator();
+ virtual ::java::util::Iterator * entryIterator();
+ static ::java::util::List * toList(::java::util::Collection *);
+public:
+ virtual ::java::util::SortedMap * subMap(::java::lang::Object *, ::java::lang::Object *);
+ virtual ::java::util::NavigableMap * subMap(::java::lang::Object *, jboolean, ::java::lang::Object *, jboolean);
+ virtual ::java::lang::Object * clone();
+ virtual ::java::util::SortedMap * tailMap(::java::lang::Object *);
+ virtual ::java::util::NavigableMap * tailMap(::java::lang::Object *, jboolean);
+ virtual ::java::util::SortedMap * headMap(::java::lang::Object *);
+ virtual ::java::util::NavigableMap * headMap(::java::lang::Object *, jboolean);
+ virtual ::java::util::Set * keySet();
+ virtual ::java::util::NavigableMap * descendingMap();
+public: // actually package-private
+ static ::java::lang::Object * access$9();
+private:
+ static const jlong serialVersionUID = -8627078645895051609LL;
+ static ::java::util::Random * seedGenerator;
+ static ::java::lang::Object * BASE_HEADER;
+ ::java::util::concurrent::ConcurrentSkipListMap$HeadIndex * volatile __attribute__((aligned(__alignof__( ::java::util::AbstractMap)))) head;
+ ::java::util::Comparator * comparator__;
+ jint randomSeed;
+ ::java::util::concurrent::ConcurrentSkipListMap$KeySet * keySet__;
+ ::java::util::concurrent::ConcurrentSkipListMap$EntrySet * entrySet__;
+ ::java::util::concurrent::ConcurrentSkipListMap$Values * values__;
+ ::java::util::concurrent::ConcurrentNavigableMap * descendingMap__;
+ static ::java::util::concurrent::atomic::AtomicReferenceFieldUpdater * headUpdater;
+ static const jint EQ = 1;
+ static const jint LT = 2;
+ static const jint GT = 0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentSkipListMap__
diff --git a/libjava/java/util/concurrent/ConcurrentSkipListSet.h b/libjava/java/util/concurrent/ConcurrentSkipListSet.h
new file mode 100644
index 000000000..65ea1a9a9
--- /dev/null
+++ b/libjava/java/util/concurrent/ConcurrentSkipListSet.h
@@ -0,0 +1,75 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ConcurrentSkipListSet__
+#define __java_util_concurrent_ConcurrentSkipListSet__
+
+#pragma interface
+
+#include <java/util/AbstractSet.h>
+extern "Java"
+{
+ namespace sun
+ {
+ namespace misc
+ {
+ class Unsafe;
+ }
+ }
+}
+
+class java::util::concurrent::ConcurrentSkipListSet : public ::java::util::AbstractSet
+{
+
+public:
+ ConcurrentSkipListSet();
+ ConcurrentSkipListSet(::java::util::Comparator *);
+ ConcurrentSkipListSet(::java::util::Collection *);
+ ConcurrentSkipListSet(::java::util::SortedSet *);
+public: // actually package-private
+ ConcurrentSkipListSet(::java::util::concurrent::ConcurrentNavigableMap *);
+public:
+ virtual ::java::util::concurrent::ConcurrentSkipListSet * ConcurrentSkipListSet$clone();
+ virtual jint size();
+ virtual jboolean isEmpty();
+ virtual jboolean contains(::java::lang::Object *);
+ virtual jboolean add(::java::lang::Object *);
+ virtual jboolean remove(::java::lang::Object *);
+ virtual void clear();
+ virtual ::java::util::Iterator * iterator();
+ virtual ::java::util::Iterator * descendingIterator();
+ virtual jboolean equals(::java::lang::Object *);
+ virtual jboolean removeAll(::java::util::Collection *);
+ virtual ::java::lang::Object * lower(::java::lang::Object *);
+ virtual ::java::lang::Object * floor(::java::lang::Object *);
+ virtual ::java::lang::Object * ceiling(::java::lang::Object *);
+ virtual ::java::lang::Object * higher(::java::lang::Object *);
+ virtual ::java::lang::Object * pollFirst();
+ virtual ::java::lang::Object * pollLast();
+ virtual ::java::util::Comparator * comparator();
+ virtual ::java::lang::Object * first();
+ virtual ::java::lang::Object * last();
+ virtual ::java::util::NavigableSet * subSet(::java::lang::Object *, jboolean, ::java::lang::Object *, jboolean);
+ virtual ::java::util::NavigableSet * headSet(::java::lang::Object *, jboolean);
+ virtual ::java::util::NavigableSet * tailSet(::java::lang::Object *, jboolean);
+ virtual ::java::util::NavigableSet * ConcurrentSkipListSet$subSet(::java::lang::Object *, ::java::lang::Object *);
+ virtual ::java::util::NavigableSet * ConcurrentSkipListSet$headSet(::java::lang::Object *);
+ virtual ::java::util::NavigableSet * ConcurrentSkipListSet$tailSet(::java::lang::Object *);
+ virtual ::java::util::NavigableSet * descendingSet();
+private:
+ void setMap(::java::util::concurrent::ConcurrentNavigableMap *);
+public:
+ virtual ::java::lang::Object * clone();
+ virtual ::java::util::SortedSet * subSet(::java::lang::Object *, ::java::lang::Object *);
+ virtual ::java::util::SortedSet * tailSet(::java::lang::Object *);
+ virtual ::java::util::SortedSet * headSet(::java::lang::Object *);
+private:
+ static const jlong serialVersionUID = -2479143111061671589LL;
+ ::java::util::concurrent::ConcurrentNavigableMap * __attribute__((aligned(__alignof__( ::java::util::AbstractSet)))) m;
+ static ::sun::misc::Unsafe * unsafe;
+ static jlong mapOffset;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ConcurrentSkipListSet__
diff --git a/libjava/java/util/concurrent/CopyOnWriteArrayList$1.h b/libjava/java/util/concurrent/CopyOnWriteArrayList$1.h
new file mode 100644
index 000000000..207ce148b
--- /dev/null
+++ b/libjava/java/util/concurrent/CopyOnWriteArrayList$1.h
@@ -0,0 +1,35 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_CopyOnWriteArrayList$1__
+#define __java_util_concurrent_CopyOnWriteArrayList$1__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::CopyOnWriteArrayList$1 : public ::java::lang::Object
+{
+
+public: // actually package-private
+ CopyOnWriteArrayList$1(::java::util::concurrent::CopyOnWriteArrayList$SubList *, jint);
+public:
+ virtual jboolean hasNext();
+ virtual jboolean hasPrevious();
+ virtual ::java::lang::Object * next();
+ virtual ::java::lang::Object * previous();
+ virtual jint nextIndex();
+ virtual jint previousIndex();
+ virtual void remove();
+ virtual void set(::java::lang::Object *);
+ virtual void add(::java::lang::Object *);
+private:
+ ::java::util::ListIterator * __attribute__((aligned(__alignof__( ::java::lang::Object)))) i;
+ jint position;
+public: // actually package-private
+ ::java::util::concurrent::CopyOnWriteArrayList$SubList * this$1;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_CopyOnWriteArrayList$1__
diff --git a/libjava/java/util/concurrent/CopyOnWriteArrayList$2.h b/libjava/java/util/concurrent/CopyOnWriteArrayList$2.h
new file mode 100644
index 000000000..7e5ba9319
--- /dev/null
+++ b/libjava/java/util/concurrent/CopyOnWriteArrayList$2.h
@@ -0,0 +1,30 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_CopyOnWriteArrayList$2__
+#define __java_util_concurrent_CopyOnWriteArrayList$2__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::CopyOnWriteArrayList$2 : public ::java::lang::Object
+{
+
+public: // actually package-private
+ CopyOnWriteArrayList$2(::java::util::concurrent::CopyOnWriteArrayList *);
+public:
+ virtual jboolean hasNext();
+ virtual ::java::lang::Object * next();
+ virtual void remove();
+public: // actually package-private
+ JArray< ::java::lang::Object * > * __attribute__((aligned(__alignof__( ::java::lang::Object)))) iteratorData;
+ jint currentElement;
+ ::java::util::concurrent::CopyOnWriteArrayList * this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_CopyOnWriteArrayList$2__
diff --git a/libjava/java/util/concurrent/CopyOnWriteArrayList$3.h b/libjava/java/util/concurrent/CopyOnWriteArrayList$3.h
new file mode 100644
index 000000000..b0cec8e53
--- /dev/null
+++ b/libjava/java/util/concurrent/CopyOnWriteArrayList$3.h
@@ -0,0 +1,36 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_CopyOnWriteArrayList$3__
+#define __java_util_concurrent_CopyOnWriteArrayList$3__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::CopyOnWriteArrayList$3 : public ::java::lang::Object
+{
+
+public: // actually package-private
+ CopyOnWriteArrayList$3(::java::util::concurrent::CopyOnWriteArrayList *, jint);
+public:
+ virtual void add(::java::lang::Object *);
+ virtual jboolean hasNext();
+ virtual jboolean hasPrevious();
+ virtual ::java::lang::Object * next();
+ virtual jint nextIndex();
+ virtual ::java::lang::Object * previous();
+ virtual jint previousIndex();
+ virtual void remove();
+ virtual void set(::java::lang::Object *);
+public: // actually package-private
+ JArray< ::java::lang::Object * > * __attribute__((aligned(__alignof__( ::java::lang::Object)))) iteratorData;
+ jint currentElement;
+ ::java::util::concurrent::CopyOnWriteArrayList * this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_CopyOnWriteArrayList$3__
diff --git a/libjava/java/util/concurrent/CopyOnWriteArrayList$RandomAccessSubList.h b/libjava/java/util/concurrent/CopyOnWriteArrayList$RandomAccessSubList.h
new file mode 100644
index 000000000..66adf0209
--- /dev/null
+++ b/libjava/java/util/concurrent/CopyOnWriteArrayList$RandomAccessSubList.h
@@ -0,0 +1,20 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_CopyOnWriteArrayList$RandomAccessSubList__
+#define __java_util_concurrent_CopyOnWriteArrayList$RandomAccessSubList__
+
+#pragma interface
+
+#include <java/util/concurrent/CopyOnWriteArrayList$SubList.h>
+
+class java::util::concurrent::CopyOnWriteArrayList$RandomAccessSubList : public ::java::util::concurrent::CopyOnWriteArrayList$SubList
+{
+
+public: // actually package-private
+ CopyOnWriteArrayList$RandomAccessSubList(::java::util::concurrent::CopyOnWriteArrayList *, jint, jint);
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_CopyOnWriteArrayList$RandomAccessSubList__
diff --git a/libjava/java/util/concurrent/CopyOnWriteArrayList$SubList.h b/libjava/java/util/concurrent/CopyOnWriteArrayList$SubList.h
new file mode 100644
index 000000000..de285a9f8
--- /dev/null
+++ b/libjava/java/util/concurrent/CopyOnWriteArrayList$SubList.h
@@ -0,0 +1,42 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_CopyOnWriteArrayList$SubList__
+#define __java_util_concurrent_CopyOnWriteArrayList$SubList__
+
+#pragma interface
+
+#include <java/util/AbstractList.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::CopyOnWriteArrayList$SubList : public ::java::util::AbstractList
+{
+
+public: // actually package-private
+ CopyOnWriteArrayList$SubList(::java::util::concurrent::CopyOnWriteArrayList *, jint, jint);
+ virtual void checkMod();
+private:
+ void checkBoundsInclusive(jint);
+ void checkBoundsExclusive(jint);
+public:
+ virtual jint size();
+ virtual void clear();
+ virtual ::java::lang::Object * set(jint, ::java::lang::Object *);
+ virtual ::java::lang::Object * get(jint);
+ virtual void add(jint, ::java::lang::Object *);
+ virtual ::java::lang::Object * remove(jint);
+ virtual jboolean addAll(jint, ::java::util::Collection *);
+ virtual jboolean addAll(::java::util::Collection *);
+ virtual ::java::util::Iterator * iterator();
+ virtual ::java::util::ListIterator * listIterator(jint);
+public: // actually package-private
+ ::java::util::concurrent::CopyOnWriteArrayList * __attribute__((aligned(__alignof__( ::java::util::AbstractList)))) backingList;
+ jint offset;
+ jint size__;
+ JArray< ::java::lang::Object * > * data;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_CopyOnWriteArrayList$SubList__
diff --git a/libjava/java/util/concurrent/CopyOnWriteArrayList.h b/libjava/java/util/concurrent/CopyOnWriteArrayList.h
new file mode 100644
index 000000000..95eec88d9
--- /dev/null
+++ b/libjava/java/util/concurrent/CopyOnWriteArrayList.h
@@ -0,0 +1,66 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_CopyOnWriteArrayList__
+#define __java_util_concurrent_CopyOnWriteArrayList__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::CopyOnWriteArrayList : public ::java::lang::Object
+{
+
+public:
+ CopyOnWriteArrayList();
+ CopyOnWriteArrayList(::java::util::Collection *);
+ CopyOnWriteArrayList(JArray< ::java::lang::Object * > *);
+ virtual jint size();
+ virtual jboolean isEmpty();
+ virtual jboolean contains(::java::lang::Object *);
+ virtual jboolean containsAll(::java::util::Collection *);
+ virtual jint indexOf(::java::lang::Object *);
+ virtual jint indexOf(::java::lang::Object *, jint);
+ virtual jint lastIndexOf(::java::lang::Object *);
+ virtual jint lastIndexOf(::java::lang::Object *, jint);
+ virtual ::java::lang::Object * clone();
+ virtual JArray< ::java::lang::Object * > * toArray();
+ virtual JArray< ::java::lang::Object * > * toArray(JArray< ::java::lang::Object * > *);
+ virtual ::java::lang::Object * get(jint);
+ virtual ::java::lang::Object * set(jint, ::java::lang::Object *);
+ virtual jboolean add(::java::lang::Object *);
+ virtual void add(jint, ::java::lang::Object *);
+ virtual ::java::lang::Object * remove(jint);
+ virtual jboolean remove(::java::lang::Object *);
+ virtual jboolean removeAll(::java::util::Collection *);
+ virtual jboolean retainAll(::java::util::Collection *);
+ virtual void clear();
+ virtual jboolean addAll(::java::util::Collection *);
+ virtual jboolean addAll(jint, ::java::util::Collection *);
+ virtual jboolean addIfAbsent(::java::lang::Object *);
+ virtual jint addAllAbsent(::java::util::Collection *);
+ virtual ::java::lang::String * toString();
+ virtual jboolean equals(::java::lang::Object *);
+ virtual jint hashCode();
+ virtual ::java::util::Iterator * iterator();
+ virtual ::java::util::ListIterator * listIterator();
+ virtual ::java::util::ListIterator * listIterator(jint);
+ virtual ::java::util::List * subList(jint, jint);
+private:
+ void writeObject(::java::io::ObjectOutputStream *);
+ void readObject(::java::io::ObjectInputStream *);
+public: // actually package-private
+ static jboolean equals(::java::lang::Object *, ::java::lang::Object *);
+ virtual JArray< ::java::lang::Object * > * getArray();
+ static JArray< ::java::lang::Object * > * access$0(::java::util::concurrent::CopyOnWriteArrayList *);
+ static void access$1(::java::util::concurrent::CopyOnWriteArrayList *, JArray< ::java::lang::Object * > *);
+private:
+ static const jlong serialVersionUID = 8673264195747942595LL;
+ JArray< ::java::lang::Object * > * __attribute__((aligned(__alignof__( ::java::lang::Object)))) data;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_CopyOnWriteArrayList__
diff --git a/libjava/java/util/concurrent/CopyOnWriteArraySet.h b/libjava/java/util/concurrent/CopyOnWriteArraySet.h
new file mode 100644
index 000000000..9fb8c8396
--- /dev/null
+++ b/libjava/java/util/concurrent/CopyOnWriteArraySet.h
@@ -0,0 +1,41 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_CopyOnWriteArraySet__
+#define __java_util_concurrent_CopyOnWriteArraySet__
+
+#pragma interface
+
+#include <java/util/AbstractSet.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::CopyOnWriteArraySet : public ::java::util::AbstractSet
+{
+
+public:
+ CopyOnWriteArraySet();
+ CopyOnWriteArraySet(::java::util::Collection *);
+ virtual jint size();
+ virtual jboolean isEmpty();
+ virtual jboolean contains(::java::lang::Object *);
+ virtual JArray< ::java::lang::Object * > * toArray();
+ virtual JArray< ::java::lang::Object * > * toArray(JArray< ::java::lang::Object * > *);
+ virtual void clear();
+ virtual jboolean remove(::java::lang::Object *);
+ virtual jboolean add(::java::lang::Object *);
+ virtual jboolean containsAll(::java::util::Collection *);
+ virtual jboolean addAll(::java::util::Collection *);
+ virtual jboolean removeAll(::java::util::Collection *);
+ virtual jboolean retainAll(::java::util::Collection *);
+ virtual ::java::util::Iterator * iterator();
+ virtual jboolean equals(::java::lang::Object *);
+private:
+ static jboolean eq(::java::lang::Object *, ::java::lang::Object *);
+ static const jlong serialVersionUID = 5457747651344034263LL;
+ ::java::util::concurrent::CopyOnWriteArrayList * __attribute__((aligned(__alignof__( ::java::util::AbstractSet)))) al;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_CopyOnWriteArraySet__
diff --git a/libjava/java/util/concurrent/CountDownLatch$Sync.h b/libjava/java/util/concurrent/CountDownLatch$Sync.h
new file mode 100644
index 000000000..ee8e75126
--- /dev/null
+++ b/libjava/java/util/concurrent/CountDownLatch$Sync.h
@@ -0,0 +1,26 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_CountDownLatch$Sync__
+#define __java_util_concurrent_CountDownLatch$Sync__
+
+#pragma interface
+
+#include <java/util/concurrent/locks/AbstractQueuedSynchronizer.h>
+
+class java::util::concurrent::CountDownLatch$Sync : public ::java::util::concurrent::locks::AbstractQueuedSynchronizer
+{
+
+public: // actually package-private
+ CountDownLatch$Sync(jint);
+ jint getCount();
+public:
+ jint tryAcquireShared(jint);
+ jboolean tryReleaseShared(jint);
+private:
+ static const jlong serialVersionUID = 4982264981922014374LL;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_CountDownLatch$Sync__
diff --git a/libjava/java/util/concurrent/CountDownLatch.h b/libjava/java/util/concurrent/CountDownLatch.h
new file mode 100644
index 000000000..68609d313
--- /dev/null
+++ b/libjava/java/util/concurrent/CountDownLatch.h
@@ -0,0 +1,27 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_CountDownLatch__
+#define __java_util_concurrent_CountDownLatch__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::CountDownLatch : public ::java::lang::Object
+{
+
+public:
+ CountDownLatch(jint);
+ virtual void await();
+ virtual jboolean await(jlong, ::java::util::concurrent::TimeUnit *);
+ virtual void countDown();
+ virtual jlong getCount();
+ virtual ::java::lang::String * toString();
+private:
+ ::java::util::concurrent::CountDownLatch$Sync * __attribute__((aligned(__alignof__( ::java::lang::Object)))) sync;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_CountDownLatch__
diff --git a/libjava/java/util/concurrent/CyclicBarrier$Generation.h b/libjava/java/util/concurrent/CyclicBarrier$Generation.h
new file mode 100644
index 000000000..c3d7e4ab1
--- /dev/null
+++ b/libjava/java/util/concurrent/CyclicBarrier$Generation.h
@@ -0,0 +1,22 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_CyclicBarrier$Generation__
+#define __java_util_concurrent_CyclicBarrier$Generation__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::CyclicBarrier$Generation : public ::java::lang::Object
+{
+
+ CyclicBarrier$Generation();
+public: // actually package-private
+ CyclicBarrier$Generation(::java::util::concurrent::CyclicBarrier$Generation *);
+ jboolean __attribute__((aligned(__alignof__( ::java::lang::Object)))) broken;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_CyclicBarrier$Generation__
diff --git a/libjava/java/util/concurrent/CyclicBarrier.h b/libjava/java/util/concurrent/CyclicBarrier.h
new file mode 100644
index 000000000..c6c4b3e4f
--- /dev/null
+++ b/libjava/java/util/concurrent/CyclicBarrier.h
@@ -0,0 +1,37 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_CyclicBarrier__
+#define __java_util_concurrent_CyclicBarrier__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::CyclicBarrier : public ::java::lang::Object
+{
+
+ void nextGeneration();
+ void breakBarrier();
+ jint dowait(jboolean, jlong);
+public:
+ CyclicBarrier(jint, ::java::lang::Runnable *);
+ CyclicBarrier(jint);
+ virtual jint getParties();
+ virtual jint await();
+ virtual jint await(jlong, ::java::util::concurrent::TimeUnit *);
+ virtual jboolean isBroken();
+ virtual void reset();
+ virtual jint getNumberWaiting();
+private:
+ ::java::util::concurrent::locks::ReentrantLock * __attribute__((aligned(__alignof__( ::java::lang::Object)))) lock;
+ ::java::util::concurrent::locks::Condition * trip;
+ jint parties;
+ ::java::lang::Runnable * barrierCommand;
+ ::java::util::concurrent::CyclicBarrier$Generation * generation;
+ jint count;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_CyclicBarrier__
diff --git a/libjava/java/util/concurrent/DelayQueue$Itr.h b/libjava/java/util/concurrent/DelayQueue$Itr.h
new file mode 100644
index 000000000..cdcc1bf20
--- /dev/null
+++ b/libjava/java/util/concurrent/DelayQueue$Itr.h
@@ -0,0 +1,32 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_DelayQueue$Itr__
+#define __java_util_concurrent_DelayQueue$Itr__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::DelayQueue$Itr : public ::java::lang::Object
+{
+
+public: // actually package-private
+ DelayQueue$Itr(::java::util::concurrent::DelayQueue *, JArray< ::java::lang::Object * > *);
+public:
+ virtual jboolean hasNext();
+ virtual ::java::util::concurrent::Delayed * DelayQueue$Itr$next();
+ virtual void remove();
+ virtual ::java::lang::Object * next();
+public: // actually package-private
+ JArray< ::java::lang::Object * > * __attribute__((aligned(__alignof__( ::java::lang::Object)))) array;
+ jint cursor;
+ jint lastRet;
+ ::java::util::concurrent::DelayQueue * this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_DelayQueue$Itr__
diff --git a/libjava/java/util/concurrent/DelayQueue.h b/libjava/java/util/concurrent/DelayQueue.h
new file mode 100644
index 000000000..b97f32248
--- /dev/null
+++ b/libjava/java/util/concurrent/DelayQueue.h
@@ -0,0 +1,57 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_DelayQueue__
+#define __java_util_concurrent_DelayQueue__
+
+#pragma interface
+
+#include <java/util/AbstractQueue.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::DelayQueue : public ::java::util::AbstractQueue
+{
+
+public:
+ DelayQueue();
+ DelayQueue(::java::util::Collection *);
+ virtual jboolean DelayQueue$add(::java::util::concurrent::Delayed *);
+ virtual jboolean DelayQueue$offer(::java::util::concurrent::Delayed *);
+ virtual void DelayQueue$put(::java::util::concurrent::Delayed *);
+ virtual jboolean DelayQueue$offer(::java::util::concurrent::Delayed *, jlong, ::java::util::concurrent::TimeUnit *);
+ virtual ::java::util::concurrent::Delayed * DelayQueue$poll();
+ virtual ::java::util::concurrent::Delayed * DelayQueue$take();
+ virtual ::java::util::concurrent::Delayed * DelayQueue$poll(jlong, ::java::util::concurrent::TimeUnit *);
+ virtual ::java::util::concurrent::Delayed * DelayQueue$peek();
+ virtual jint size();
+ virtual jint drainTo(::java::util::Collection *);
+ virtual jint drainTo(::java::util::Collection *, jint);
+ virtual void clear();
+ virtual jint remainingCapacity();
+ virtual JArray< ::java::lang::Object * > * toArray();
+ virtual JArray< ::java::lang::Object * > * toArray(JArray< ::java::lang::Object * > *);
+ virtual jboolean remove(::java::lang::Object *);
+ virtual ::java::util::Iterator * iterator();
+ virtual ::java::lang::Object * poll(jlong, ::java::util::concurrent::TimeUnit *);
+ virtual ::java::lang::Object * poll();
+ virtual ::java::lang::Object * take();
+ virtual jboolean offer(::java::lang::Object *, jlong, ::java::util::concurrent::TimeUnit *);
+ virtual jboolean offer(::java::lang::Object *);
+ virtual ::java::lang::Object * peek();
+ virtual jboolean add(::java::lang::Object *);
+ virtual void put(::java::lang::Object *);
+public: // actually package-private
+ static ::java::util::concurrent::locks::ReentrantLock * access$8(::java::util::concurrent::DelayQueue *);
+ static ::java::util::PriorityQueue * access$9(::java::util::concurrent::DelayQueue *);
+private:
+ ::java::util::concurrent::locks::ReentrantLock * __attribute__((aligned(__alignof__( ::java::util::AbstractQueue)))) lock;
+ ::java::util::concurrent::locks::Condition * available;
+ ::java::util::PriorityQueue * q;
+public: // actually package-private
+ static jboolean $assertionsDisabled;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_DelayQueue__
diff --git a/libjava/java/util/concurrent/Delayed.h b/libjava/java/util/concurrent/Delayed.h
new file mode 100644
index 000000000..2a8d4e5d1
--- /dev/null
+++ b/libjava/java/util/concurrent/Delayed.h
@@ -0,0 +1,20 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Delayed__
+#define __java_util_concurrent_Delayed__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::Delayed : public ::java::lang::Object
+{
+
+public:
+ virtual jlong getDelay(::java::util::concurrent::TimeUnit *) = 0;
+ virtual jint compareTo(::java::lang::Object *) = 0;
+ static ::java::lang::Class class$;
+} __attribute__ ((java_interface));
+
+#endif // __java_util_concurrent_Delayed__
diff --git a/libjava/java/util/concurrent/Exchanger$Node.h b/libjava/java/util/concurrent/Exchanger$Node.h
new file mode 100644
index 000000000..4bd3890ea
--- /dev/null
+++ b/libjava/java/util/concurrent/Exchanger$Node.h
@@ -0,0 +1,21 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Exchanger$Node__
+#define __java_util_concurrent_Exchanger$Node__
+
+#pragma interface
+
+#include <java/util/concurrent/atomic/AtomicReference.h>
+
+class java::util::concurrent::Exchanger$Node : public ::java::util::concurrent::atomic::AtomicReference
+{
+
+public:
+ Exchanger$Node(::java::lang::Object *);
+ ::java::lang::Object * __attribute__((aligned(__alignof__( ::java::util::concurrent::atomic::AtomicReference)))) item;
+ ::java::lang::Thread * volatile waiter;
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_Exchanger$Node__
diff --git a/libjava/java/util/concurrent/Exchanger$Slot.h b/libjava/java/util/concurrent/Exchanger$Slot.h
new file mode 100644
index 000000000..4d1d41654
--- /dev/null
+++ b/libjava/java/util/concurrent/Exchanger$Slot.h
@@ -0,0 +1,36 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Exchanger$Slot__
+#define __java_util_concurrent_Exchanger$Slot__
+
+#pragma interface
+
+#include <java/util/concurrent/atomic/AtomicReference.h>
+
+class java::util::concurrent::Exchanger$Slot : public ::java::util::concurrent::atomic::AtomicReference
+{
+
+ Exchanger$Slot();
+public: // actually package-private
+ Exchanger$Slot(::java::util::concurrent::Exchanger$Slot *);
+ jlong __attribute__((aligned(__alignof__( ::java::util::concurrent::atomic::AtomicReference)))) q0;
+ jlong q1;
+ jlong q2;
+ jlong q3;
+ jlong q4;
+ jlong q5;
+ jlong q6;
+ jlong q7;
+ jlong q8;
+ jlong q9;
+ jlong qa;
+ jlong qb;
+ jlong qc;
+ jlong qd;
+ jlong qe;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_Exchanger$Slot__
diff --git a/libjava/java/util/concurrent/Exchanger.h b/libjava/java/util/concurrent/Exchanger.h
new file mode 100644
index 000000000..5a0993e26
--- /dev/null
+++ b/libjava/java/util/concurrent/Exchanger.h
@@ -0,0 +1,42 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Exchanger__
+#define __java_util_concurrent_Exchanger__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::Exchanger : public ::java::lang::Object
+{
+
+ ::java::lang::Object * doExchange(::java::lang::Object *, jboolean, jlong);
+ jint hashIndex();
+ void createSlot(jint);
+ static jboolean tryCancel(::java::util::concurrent::Exchanger$Node *, ::java::util::concurrent::Exchanger$Slot *);
+ static ::java::lang::Object * spinWait(::java::util::concurrent::Exchanger$Node *, ::java::util::concurrent::Exchanger$Slot *);
+ static ::java::lang::Object * await(::java::util::concurrent::Exchanger$Node *, ::java::util::concurrent::Exchanger$Slot *);
+ ::java::lang::Object * awaitNanos(::java::util::concurrent::Exchanger$Node *, ::java::util::concurrent::Exchanger$Slot *, jlong);
+ ::java::lang::Object * scanOnTimeout(::java::util::concurrent::Exchanger$Node *);
+public:
+ Exchanger();
+ virtual ::java::lang::Object * exchange(::java::lang::Object *);
+ virtual ::java::lang::Object * exchange(::java::lang::Object *, jlong, ::java::util::concurrent::TimeUnit *);
+private:
+ static jint NCPU;
+ static const jint CAPACITY = 32;
+ static jint FULL;
+ static jint SPINS;
+ static jint TIMED_SPINS;
+ static ::java::lang::Object * CANCEL;
+ static ::java::lang::Object * NULL_ITEM;
+ JArray< ::java::util::concurrent::Exchanger$Slot * > * volatile __attribute__((aligned(__alignof__( ::java::lang::Object)))) arena;
+ ::java::util::concurrent::atomic::AtomicInteger * max;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_Exchanger__
diff --git a/libjava/java/util/concurrent/ExecutionException.h b/libjava/java/util/concurrent/ExecutionException.h
new file mode 100644
index 000000000..3f210c7df
--- /dev/null
+++ b/libjava/java/util/concurrent/ExecutionException.h
@@ -0,0 +1,26 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ExecutionException__
+#define __java_util_concurrent_ExecutionException__
+
+#pragma interface
+
+#include <java/lang/Exception.h>
+
+class java::util::concurrent::ExecutionException : public ::java::lang::Exception
+{
+
+public: // actually protected
+ ExecutionException();
+ ExecutionException(::java::lang::String *);
+public:
+ ExecutionException(::java::lang::String *, ::java::lang::Throwable *);
+ ExecutionException(::java::lang::Throwable *);
+private:
+ static const jlong serialVersionUID = 7830266012832686185LL;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ExecutionException__
diff --git a/libjava/java/util/concurrent/Executor.h b/libjava/java/util/concurrent/Executor.h
new file mode 100644
index 000000000..2e59bc466
--- /dev/null
+++ b/libjava/java/util/concurrent/Executor.h
@@ -0,0 +1,19 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Executor__
+#define __java_util_concurrent_Executor__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::Executor : public ::java::lang::Object
+{
+
+public:
+ virtual void execute(::java::lang::Runnable *) = 0;
+ static ::java::lang::Class class$;
+} __attribute__ ((java_interface));
+
+#endif // __java_util_concurrent_Executor__
diff --git a/libjava/java/util/concurrent/ExecutorCompletionService$QueueingFuture.h b/libjava/java/util/concurrent/ExecutorCompletionService$QueueingFuture.h
new file mode 100644
index 000000000..806cecfe2
--- /dev/null
+++ b/libjava/java/util/concurrent/ExecutorCompletionService$QueueingFuture.h
@@ -0,0 +1,26 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ExecutorCompletionService$QueueingFuture__
+#define __java_util_concurrent_ExecutorCompletionService$QueueingFuture__
+
+#pragma interface
+
+#include <java/util/concurrent/FutureTask.h>
+
+class java::util::concurrent::ExecutorCompletionService$QueueingFuture : public ::java::util::concurrent::FutureTask
+{
+
+public: // actually package-private
+ ExecutorCompletionService$QueueingFuture(::java::util::concurrent::ExecutorCompletionService *, ::java::util::concurrent::RunnableFuture *);
+public: // actually protected
+ virtual void done();
+private:
+ ::java::util::concurrent::Future * __attribute__((aligned(__alignof__( ::java::util::concurrent::FutureTask)))) task;
+public: // actually package-private
+ ::java::util::concurrent::ExecutorCompletionService * this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ExecutorCompletionService$QueueingFuture__
diff --git a/libjava/java/util/concurrent/ExecutorCompletionService.h b/libjava/java/util/concurrent/ExecutorCompletionService.h
new file mode 100644
index 000000000..922e2d98e
--- /dev/null
+++ b/libjava/java/util/concurrent/ExecutorCompletionService.h
@@ -0,0 +1,34 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ExecutorCompletionService__
+#define __java_util_concurrent_ExecutorCompletionService__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::ExecutorCompletionService : public ::java::lang::Object
+{
+
+ ::java::util::concurrent::RunnableFuture * newTaskFor(::java::util::concurrent::Callable *);
+ ::java::util::concurrent::RunnableFuture * newTaskFor(::java::lang::Runnable *, ::java::lang::Object *);
+public:
+ ExecutorCompletionService(::java::util::concurrent::Executor *);
+ ExecutorCompletionService(::java::util::concurrent::Executor *, ::java::util::concurrent::BlockingQueue *);
+ virtual ::java::util::concurrent::Future * submit(::java::util::concurrent::Callable *);
+ virtual ::java::util::concurrent::Future * submit(::java::lang::Runnable *, ::java::lang::Object *);
+ virtual ::java::util::concurrent::Future * take();
+ virtual ::java::util::concurrent::Future * poll();
+ virtual ::java::util::concurrent::Future * poll(jlong, ::java::util::concurrent::TimeUnit *);
+public: // actually package-private
+ static ::java::util::concurrent::BlockingQueue * access$0(::java::util::concurrent::ExecutorCompletionService *);
+private:
+ ::java::util::concurrent::Executor * __attribute__((aligned(__alignof__( ::java::lang::Object)))) executor;
+ ::java::util::concurrent::AbstractExecutorService * aes;
+ ::java::util::concurrent::BlockingQueue * completionQueue;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ExecutorCompletionService__
diff --git a/libjava/java/util/concurrent/ExecutorService.h b/libjava/java/util/concurrent/ExecutorService.h
new file mode 100644
index 000000000..3c2431495
--- /dev/null
+++ b/libjava/java/util/concurrent/ExecutorService.h
@@ -0,0 +1,31 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ExecutorService__
+#define __java_util_concurrent_ExecutorService__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::ExecutorService : public ::java::lang::Object
+{
+
+public:
+ virtual void shutdown() = 0;
+ virtual ::java::util::List * shutdownNow() = 0;
+ virtual jboolean isShutdown() = 0;
+ virtual jboolean isTerminated() = 0;
+ virtual jboolean awaitTermination(jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ virtual ::java::util::concurrent::Future * submit(::java::util::concurrent::Callable *) = 0;
+ virtual ::java::util::concurrent::Future * submit(::java::lang::Runnable *, ::java::lang::Object *) = 0;
+ virtual ::java::util::concurrent::Future * submit(::java::lang::Runnable *) = 0;
+ virtual ::java::util::List * invokeAll(::java::util::Collection *) = 0;
+ virtual ::java::util::List * invokeAll(::java::util::Collection *, jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ virtual ::java::lang::Object * invokeAny(::java::util::Collection *) = 0;
+ virtual ::java::lang::Object * invokeAny(::java::util::Collection *, jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ virtual void execute(::java::lang::Runnable *) = 0;
+ static ::java::lang::Class class$;
+} __attribute__ ((java_interface));
+
+#endif // __java_util_concurrent_ExecutorService__
diff --git a/libjava/java/util/concurrent/Executors$1.h b/libjava/java/util/concurrent/Executors$1.h
new file mode 100644
index 000000000..9830f9f39
--- /dev/null
+++ b/libjava/java/util/concurrent/Executors$1.h
@@ -0,0 +1,24 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Executors$1__
+#define __java_util_concurrent_Executors$1__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::Executors$1 : public ::java::lang::Object
+{
+
+public: // actually package-private
+ Executors$1(::java::util::concurrent::Executors$PrivilegedCallable *);
+public:
+ virtual ::java::lang::Object * run();
+public: // actually package-private
+ ::java::util::concurrent::Executors$PrivilegedCallable * __attribute__((aligned(__alignof__( ::java::lang::Object)))) this$1;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_Executors$1__
diff --git a/libjava/java/util/concurrent/Executors$2.h b/libjava/java/util/concurrent/Executors$2.h
new file mode 100644
index 000000000..2a9c2e096
--- /dev/null
+++ b/libjava/java/util/concurrent/Executors$2.h
@@ -0,0 +1,24 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Executors$2__
+#define __java_util_concurrent_Executors$2__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::Executors$2 : public ::java::lang::Object
+{
+
+public: // actually package-private
+ Executors$2(::java::util::concurrent::Executors$PrivilegedCallableUsingCurrentClassLoader *);
+public:
+ virtual ::java::lang::Object * run();
+public: // actually package-private
+ ::java::util::concurrent::Executors$PrivilegedCallableUsingCurrentClassLoader * __attribute__((aligned(__alignof__( ::java::lang::Object)))) this$1;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_Executors$2__
diff --git a/libjava/java/util/concurrent/Executors$3.h b/libjava/java/util/concurrent/Executors$3.h
new file mode 100644
index 000000000..d8f9cd780
--- /dev/null
+++ b/libjava/java/util/concurrent/Executors$3.h
@@ -0,0 +1,27 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Executors$3__
+#define __java_util_concurrent_Executors$3__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::Executors$3 : public ::java::lang::Object
+{
+
+public: // actually package-private
+ Executors$3(::java::util::concurrent::Executors$PrivilegedThreadFactory *, ::java::lang::Runnable *);
+public:
+ virtual void run();
+public: // actually package-private
+ static ::java::util::concurrent::Executors$PrivilegedThreadFactory * access$0(::java::util::concurrent::Executors$3 *);
+ ::java::util::concurrent::Executors$PrivilegedThreadFactory * __attribute__((aligned(__alignof__( ::java::lang::Object)))) this$1;
+private:
+ ::java::lang::Runnable * val$r;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_Executors$3__
diff --git a/libjava/java/util/concurrent/Executors$4.h b/libjava/java/util/concurrent/Executors$4.h
new file mode 100644
index 000000000..e38ca3f40
--- /dev/null
+++ b/libjava/java/util/concurrent/Executors$4.h
@@ -0,0 +1,26 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Executors$4__
+#define __java_util_concurrent_Executors$4__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::Executors$4 : public ::java::lang::Object
+{
+
+public: // actually package-private
+ Executors$4(::java::util::concurrent::Executors$3 *, ::java::lang::Runnable *);
+public:
+ virtual ::java::lang::Object * run();
+public: // actually package-private
+ ::java::util::concurrent::Executors$3 * __attribute__((aligned(__alignof__( ::java::lang::Object)))) this$2;
+private:
+ ::java::lang::Runnable * val$r;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_Executors$4__
diff --git a/libjava/java/util/concurrent/Executors$5.h b/libjava/java/util/concurrent/Executors$5.h
new file mode 100644
index 000000000..e69ed2f36
--- /dev/null
+++ b/libjava/java/util/concurrent/Executors$5.h
@@ -0,0 +1,34 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Executors$5__
+#define __java_util_concurrent_Executors$5__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+extern "Java"
+{
+ namespace java
+ {
+ namespace security
+ {
+ class PrivilegedAction;
+ }
+ }
+}
+
+class java::util::concurrent::Executors$5 : public ::java::lang::Object
+{
+
+public: // actually package-private
+ Executors$5(::java::security::PrivilegedAction *);
+public:
+ virtual ::java::lang::Object * call();
+private:
+ ::java::security::PrivilegedAction * __attribute__((aligned(__alignof__( ::java::lang::Object)))) val$action;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_Executors$5__
diff --git a/libjava/java/util/concurrent/Executors$6.h b/libjava/java/util/concurrent/Executors$6.h
new file mode 100644
index 000000000..26291e25d
--- /dev/null
+++ b/libjava/java/util/concurrent/Executors$6.h
@@ -0,0 +1,34 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Executors$6__
+#define __java_util_concurrent_Executors$6__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+extern "Java"
+{
+ namespace java
+ {
+ namespace security
+ {
+ class PrivilegedExceptionAction;
+ }
+ }
+}
+
+class java::util::concurrent::Executors$6 : public ::java::lang::Object
+{
+
+public: // actually package-private
+ Executors$6(::java::security::PrivilegedExceptionAction *);
+public:
+ virtual ::java::lang::Object * call();
+private:
+ ::java::security::PrivilegedExceptionAction * __attribute__((aligned(__alignof__( ::java::lang::Object)))) val$action;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_Executors$6__
diff --git a/libjava/java/util/concurrent/Executors$DefaultThreadFactory.h b/libjava/java/util/concurrent/Executors$DefaultThreadFactory.h
new file mode 100644
index 000000000..7a2d8a757
--- /dev/null
+++ b/libjava/java/util/concurrent/Executors$DefaultThreadFactory.h
@@ -0,0 +1,27 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Executors$DefaultThreadFactory__
+#define __java_util_concurrent_Executors$DefaultThreadFactory__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::Executors$DefaultThreadFactory : public ::java::lang::Object
+{
+
+public: // actually package-private
+ Executors$DefaultThreadFactory();
+public:
+ virtual ::java::lang::Thread * newThread(::java::lang::Runnable *);
+public: // actually package-private
+ static ::java::util::concurrent::atomic::AtomicInteger * poolNumber;
+ ::java::lang::ThreadGroup * __attribute__((aligned(__alignof__( ::java::lang::Object)))) group;
+ ::java::util::concurrent::atomic::AtomicInteger * threadNumber;
+ ::java::lang::String * namePrefix;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_Executors$DefaultThreadFactory__
diff --git a/libjava/java/util/concurrent/Executors$DelegatedExecutorService.h b/libjava/java/util/concurrent/Executors$DelegatedExecutorService.h
new file mode 100644
index 000000000..6bca4b1f2
--- /dev/null
+++ b/libjava/java/util/concurrent/Executors$DelegatedExecutorService.h
@@ -0,0 +1,36 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Executors$DelegatedExecutorService__
+#define __java_util_concurrent_Executors$DelegatedExecutorService__
+
+#pragma interface
+
+#include <java/util/concurrent/AbstractExecutorService.h>
+
+class java::util::concurrent::Executors$DelegatedExecutorService : public ::java::util::concurrent::AbstractExecutorService
+{
+
+public: // actually package-private
+ Executors$DelegatedExecutorService(::java::util::concurrent::ExecutorService *);
+public:
+ virtual void execute(::java::lang::Runnable *);
+ virtual void shutdown();
+ virtual ::java::util::List * shutdownNow();
+ virtual jboolean isShutdown();
+ virtual jboolean isTerminated();
+ virtual jboolean awaitTermination(jlong, ::java::util::concurrent::TimeUnit *);
+ virtual ::java::util::concurrent::Future * submit(::java::lang::Runnable *);
+ virtual ::java::util::concurrent::Future * submit(::java::util::concurrent::Callable *);
+ virtual ::java::util::concurrent::Future * submit(::java::lang::Runnable *, ::java::lang::Object *);
+ virtual ::java::util::List * invokeAll(::java::util::Collection *);
+ virtual ::java::util::List * invokeAll(::java::util::Collection *, jlong, ::java::util::concurrent::TimeUnit *);
+ virtual ::java::lang::Object * invokeAny(::java::util::Collection *);
+ virtual ::java::lang::Object * invokeAny(::java::util::Collection *, jlong, ::java::util::concurrent::TimeUnit *);
+private:
+ ::java::util::concurrent::ExecutorService * __attribute__((aligned(__alignof__( ::java::util::concurrent::AbstractExecutorService)))) e;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_Executors$DelegatedExecutorService__
diff --git a/libjava/java/util/concurrent/Executors$DelegatedScheduledExecutorService.h b/libjava/java/util/concurrent/Executors$DelegatedScheduledExecutorService.h
new file mode 100644
index 000000000..a7efdb071
--- /dev/null
+++ b/libjava/java/util/concurrent/Executors$DelegatedScheduledExecutorService.h
@@ -0,0 +1,27 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Executors$DelegatedScheduledExecutorService__
+#define __java_util_concurrent_Executors$DelegatedScheduledExecutorService__
+
+#pragma interface
+
+#include <java/util/concurrent/Executors$DelegatedExecutorService.h>
+
+class java::util::concurrent::Executors$DelegatedScheduledExecutorService : public ::java::util::concurrent::Executors$DelegatedExecutorService
+{
+
+public: // actually package-private
+ Executors$DelegatedScheduledExecutorService(::java::util::concurrent::ScheduledExecutorService *);
+public:
+ virtual ::java::util::concurrent::ScheduledFuture * schedule(::java::lang::Runnable *, jlong, ::java::util::concurrent::TimeUnit *);
+ virtual ::java::util::concurrent::ScheduledFuture * schedule(::java::util::concurrent::Callable *, jlong, ::java::util::concurrent::TimeUnit *);
+ virtual ::java::util::concurrent::ScheduledFuture * scheduleAtFixedRate(::java::lang::Runnable *, jlong, jlong, ::java::util::concurrent::TimeUnit *);
+ virtual ::java::util::concurrent::ScheduledFuture * scheduleWithFixedDelay(::java::lang::Runnable *, jlong, jlong, ::java::util::concurrent::TimeUnit *);
+private:
+ ::java::util::concurrent::ScheduledExecutorService * __attribute__((aligned(__alignof__( ::java::util::concurrent::Executors$DelegatedExecutorService)))) e;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_Executors$DelegatedScheduledExecutorService__
diff --git a/libjava/java/util/concurrent/Executors$FinalizableDelegatedExecutorService.h b/libjava/java/util/concurrent/Executors$FinalizableDelegatedExecutorService.h
new file mode 100644
index 000000000..fd4f2bd76
--- /dev/null
+++ b/libjava/java/util/concurrent/Executors$FinalizableDelegatedExecutorService.h
@@ -0,0 +1,22 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Executors$FinalizableDelegatedExecutorService__
+#define __java_util_concurrent_Executors$FinalizableDelegatedExecutorService__
+
+#pragma interface
+
+#include <java/util/concurrent/Executors$DelegatedExecutorService.h>
+
+class java::util::concurrent::Executors$FinalizableDelegatedExecutorService : public ::java::util::concurrent::Executors$DelegatedExecutorService
+{
+
+public: // actually package-private
+ Executors$FinalizableDelegatedExecutorService(::java::util::concurrent::ExecutorService *);
+public: // actually protected
+ virtual void finalize();
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_Executors$FinalizableDelegatedExecutorService__
diff --git a/libjava/java/util/concurrent/Executors$PrivilegedCallable.h b/libjava/java/util/concurrent/Executors$PrivilegedCallable.h
new file mode 100644
index 000000000..09609857d
--- /dev/null
+++ b/libjava/java/util/concurrent/Executors$PrivilegedCallable.h
@@ -0,0 +1,41 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Executors$PrivilegedCallable__
+#define __java_util_concurrent_Executors$PrivilegedCallable__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+extern "Java"
+{
+ namespace java
+ {
+ namespace security
+ {
+ class AccessControlContext;
+ }
+ }
+}
+
+class java::util::concurrent::Executors$PrivilegedCallable : public ::java::lang::Object
+{
+
+public: // actually package-private
+ Executors$PrivilegedCallable(::java::util::concurrent::Callable *);
+public:
+ ::java::lang::Object * call();
+public: // actually package-private
+ static ::java::util::concurrent::Callable * access$0(::java::util::concurrent::Executors$PrivilegedCallable *);
+ static void access$1(::java::util::concurrent::Executors$PrivilegedCallable *, ::java::lang::Object *);
+ static void access$2(::java::util::concurrent::Executors$PrivilegedCallable *, ::java::lang::Exception *);
+private:
+ ::java::security::AccessControlContext * __attribute__((aligned(__alignof__( ::java::lang::Object)))) acc;
+ ::java::util::concurrent::Callable * task;
+ ::java::lang::Object * result;
+ ::java::lang::Exception * exception;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_Executors$PrivilegedCallable__
diff --git a/libjava/java/util/concurrent/Executors$PrivilegedCallableUsingCurrentClassLoader.h b/libjava/java/util/concurrent/Executors$PrivilegedCallableUsingCurrentClassLoader.h
new file mode 100644
index 000000000..452f6ef25
--- /dev/null
+++ b/libjava/java/util/concurrent/Executors$PrivilegedCallableUsingCurrentClassLoader.h
@@ -0,0 +1,43 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Executors$PrivilegedCallableUsingCurrentClassLoader__
+#define __java_util_concurrent_Executors$PrivilegedCallableUsingCurrentClassLoader__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+extern "Java"
+{
+ namespace java
+ {
+ namespace security
+ {
+ class AccessControlContext;
+ }
+ }
+}
+
+class java::util::concurrent::Executors$PrivilegedCallableUsingCurrentClassLoader : public ::java::lang::Object
+{
+
+public: // actually package-private
+ Executors$PrivilegedCallableUsingCurrentClassLoader(::java::util::concurrent::Callable *);
+public:
+ ::java::lang::Object * call();
+public: // actually package-private
+ static ::java::lang::ClassLoader * access$0(::java::util::concurrent::Executors$PrivilegedCallableUsingCurrentClassLoader *);
+ static ::java::util::concurrent::Callable * access$1(::java::util::concurrent::Executors$PrivilegedCallableUsingCurrentClassLoader *);
+ static void access$2(::java::util::concurrent::Executors$PrivilegedCallableUsingCurrentClassLoader *, ::java::lang::Object *);
+ static void access$3(::java::util::concurrent::Executors$PrivilegedCallableUsingCurrentClassLoader *, ::java::lang::Exception *);
+private:
+ ::java::lang::ClassLoader * __attribute__((aligned(__alignof__( ::java::lang::Object)))) ccl;
+ ::java::security::AccessControlContext * acc;
+ ::java::util::concurrent::Callable * task;
+ ::java::lang::Object * result;
+ ::java::lang::Exception * exception;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_Executors$PrivilegedCallableUsingCurrentClassLoader__
diff --git a/libjava/java/util/concurrent/Executors$PrivilegedThreadFactory.h b/libjava/java/util/concurrent/Executors$PrivilegedThreadFactory.h
new file mode 100644
index 000000000..0258eea5e
--- /dev/null
+++ b/libjava/java/util/concurrent/Executors$PrivilegedThreadFactory.h
@@ -0,0 +1,38 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Executors$PrivilegedThreadFactory__
+#define __java_util_concurrent_Executors$PrivilegedThreadFactory__
+
+#pragma interface
+
+#include <java/util/concurrent/Executors$DefaultThreadFactory.h>
+extern "Java"
+{
+ namespace java
+ {
+ namespace security
+ {
+ class AccessControlContext;
+ }
+ }
+}
+
+class java::util::concurrent::Executors$PrivilegedThreadFactory : public ::java::util::concurrent::Executors$DefaultThreadFactory
+{
+
+public: // actually package-private
+ Executors$PrivilegedThreadFactory();
+public:
+ virtual ::java::lang::Thread * newThread(::java::lang::Runnable *);
+public: // actually package-private
+ static ::java::lang::ClassLoader * access$0(::java::util::concurrent::Executors$PrivilegedThreadFactory *);
+ static ::java::security::AccessControlContext * access$1(::java::util::concurrent::Executors$PrivilegedThreadFactory *);
+private:
+ ::java::lang::ClassLoader * __attribute__((aligned(__alignof__( ::java::util::concurrent::Executors$DefaultThreadFactory)))) ccl;
+ ::java::security::AccessControlContext * acc;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_Executors$PrivilegedThreadFactory__
diff --git a/libjava/java/util/concurrent/Executors$RunnableAdapter.h b/libjava/java/util/concurrent/Executors$RunnableAdapter.h
new file mode 100644
index 000000000..5d75fe835
--- /dev/null
+++ b/libjava/java/util/concurrent/Executors$RunnableAdapter.h
@@ -0,0 +1,25 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Executors$RunnableAdapter__
+#define __java_util_concurrent_Executors$RunnableAdapter__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::Executors$RunnableAdapter : public ::java::lang::Object
+{
+
+public: // actually package-private
+ Executors$RunnableAdapter(::java::lang::Runnable *, ::java::lang::Object *);
+public:
+ ::java::lang::Object * call();
+public: // actually package-private
+ ::java::lang::Runnable * __attribute__((aligned(__alignof__( ::java::lang::Object)))) task;
+ ::java::lang::Object * result;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_Executors$RunnableAdapter__
diff --git a/libjava/java/util/concurrent/Executors.h b/libjava/java/util/concurrent/Executors.h
new file mode 100644
index 000000000..8e6a428a1
--- /dev/null
+++ b/libjava/java/util/concurrent/Executors.h
@@ -0,0 +1,52 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Executors__
+#define __java_util_concurrent_Executors__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+extern "Java"
+{
+ namespace java
+ {
+ namespace security
+ {
+ class PrivilegedAction;
+ class PrivilegedExceptionAction;
+ }
+ }
+}
+
+class java::util::concurrent::Executors : public ::java::lang::Object
+{
+
+public:
+ static ::java::util::concurrent::ExecutorService * newFixedThreadPool(jint);
+ static ::java::util::concurrent::ExecutorService * newFixedThreadPool(jint, ::java::util::concurrent::ThreadFactory *);
+ static ::java::util::concurrent::ExecutorService * newSingleThreadExecutor();
+ static ::java::util::concurrent::ExecutorService * newSingleThreadExecutor(::java::util::concurrent::ThreadFactory *);
+ static ::java::util::concurrent::ExecutorService * newCachedThreadPool();
+ static ::java::util::concurrent::ExecutorService * newCachedThreadPool(::java::util::concurrent::ThreadFactory *);
+ static ::java::util::concurrent::ScheduledExecutorService * newSingleThreadScheduledExecutor();
+ static ::java::util::concurrent::ScheduledExecutorService * newSingleThreadScheduledExecutor(::java::util::concurrent::ThreadFactory *);
+ static ::java::util::concurrent::ScheduledExecutorService * newScheduledThreadPool(jint);
+ static ::java::util::concurrent::ScheduledExecutorService * newScheduledThreadPool(jint, ::java::util::concurrent::ThreadFactory *);
+ static ::java::util::concurrent::ExecutorService * unconfigurableExecutorService(::java::util::concurrent::ExecutorService *);
+ static ::java::util::concurrent::ScheduledExecutorService * unconfigurableScheduledExecutorService(::java::util::concurrent::ScheduledExecutorService *);
+ static ::java::util::concurrent::ThreadFactory * defaultThreadFactory();
+ static ::java::util::concurrent::ThreadFactory * privilegedThreadFactory();
+ static ::java::util::concurrent::Callable * callable(::java::lang::Runnable *, ::java::lang::Object *);
+ static ::java::util::concurrent::Callable * callable(::java::lang::Runnable *);
+ static ::java::util::concurrent::Callable * callable(::java::security::PrivilegedAction *);
+ static ::java::util::concurrent::Callable * callable(::java::security::PrivilegedExceptionAction *);
+ static ::java::util::concurrent::Callable * privilegedCallable(::java::util::concurrent::Callable *);
+ static ::java::util::concurrent::Callable * privilegedCallableUsingCurrentClassLoader(::java::util::concurrent::Callable *);
+private:
+ Executors();
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_Executors__
diff --git a/libjava/java/util/concurrent/Future.h b/libjava/java/util/concurrent/Future.h
new file mode 100644
index 000000000..9f70627a7
--- /dev/null
+++ b/libjava/java/util/concurrent/Future.h
@@ -0,0 +1,23 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Future__
+#define __java_util_concurrent_Future__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::Future : public ::java::lang::Object
+{
+
+public:
+ virtual jboolean cancel(jboolean) = 0;
+ virtual jboolean isCancelled() = 0;
+ virtual jboolean isDone() = 0;
+ virtual ::java::lang::Object * get() = 0;
+ virtual ::java::lang::Object * get(jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ static ::java::lang::Class class$;
+} __attribute__ ((java_interface));
+
+#endif // __java_util_concurrent_Future__
diff --git a/libjava/java/util/concurrent/FutureTask$Sync.h b/libjava/java/util/concurrent/FutureTask$Sync.h
new file mode 100644
index 000000000..edaa1cad7
--- /dev/null
+++ b/libjava/java/util/concurrent/FutureTask$Sync.h
@@ -0,0 +1,46 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_FutureTask$Sync__
+#define __java_util_concurrent_FutureTask$Sync__
+
+#pragma interface
+
+#include <java/util/concurrent/locks/AbstractQueuedSynchronizer.h>
+
+class java::util::concurrent::FutureTask$Sync : public ::java::util::concurrent::locks::AbstractQueuedSynchronizer
+{
+
+public: // actually package-private
+ FutureTask$Sync(::java::util::concurrent::FutureTask *, ::java::util::concurrent::Callable *);
+private:
+ jboolean ranOrCancelled(jint);
+public: // actually protected
+ jint tryAcquireShared(jint);
+ jboolean tryReleaseShared(jint);
+public: // actually package-private
+ jboolean innerIsCancelled();
+ jboolean innerIsDone();
+ ::java::lang::Object * innerGet();
+ ::java::lang::Object * innerGet(jlong);
+ void innerSet(::java::lang::Object *);
+ void innerSetException(::java::lang::Throwable *);
+ jboolean innerCancel(jboolean);
+ void innerRun();
+ jboolean innerRunAndReset();
+private:
+ static const jlong serialVersionUID = -7828117401763700385LL;
+ static const jint RUNNING = 1;
+ static const jint RAN = 2;
+ static const jint CANCELLED = 4;
+ ::java::util::concurrent::Callable * __attribute__((aligned(__alignof__( ::java::util::concurrent::locks::AbstractQueuedSynchronizer)))) callable;
+ ::java::lang::Object * result;
+ ::java::lang::Throwable * exception;
+ ::java::lang::Thread * volatile runner;
+public: // actually package-private
+ ::java::util::concurrent::FutureTask * this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_FutureTask$Sync__
diff --git a/libjava/java/util/concurrent/FutureTask.h b/libjava/java/util/concurrent/FutureTask.h
new file mode 100644
index 000000000..a86215f43
--- /dev/null
+++ b/libjava/java/util/concurrent/FutureTask.h
@@ -0,0 +1,36 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_FutureTask__
+#define __java_util_concurrent_FutureTask__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::FutureTask : public ::java::lang::Object
+{
+
+public:
+ FutureTask(::java::util::concurrent::Callable *);
+ FutureTask(::java::lang::Runnable *, ::java::lang::Object *);
+ virtual jboolean isCancelled();
+ virtual jboolean isDone();
+ virtual jboolean cancel(jboolean);
+ virtual ::java::lang::Object * get();
+ virtual ::java::lang::Object * get(jlong, ::java::util::concurrent::TimeUnit *);
+public: // actually protected
+ virtual void done();
+ virtual void set(::java::lang::Object *);
+ virtual void setException(::java::lang::Throwable *);
+public:
+ virtual void run();
+public: // actually protected
+ virtual jboolean runAndReset();
+private:
+ ::java::util::concurrent::FutureTask$Sync * __attribute__((aligned(__alignof__( ::java::lang::Object)))) sync;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_FutureTask__
diff --git a/libjava/java/util/concurrent/LinkedBlockingDeque$AbstractItr.h b/libjava/java/util/concurrent/LinkedBlockingDeque$AbstractItr.h
new file mode 100644
index 000000000..2aeec8a97
--- /dev/null
+++ b/libjava/java/util/concurrent/LinkedBlockingDeque$AbstractItr.h
@@ -0,0 +1,32 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_LinkedBlockingDeque$AbstractItr__
+#define __java_util_concurrent_LinkedBlockingDeque$AbstractItr__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::LinkedBlockingDeque$AbstractItr : public ::java::lang::Object
+{
+
+public: // actually package-private
+ LinkedBlockingDeque$AbstractItr(::java::util::concurrent::LinkedBlockingDeque *);
+ virtual void advance() = 0;
+public:
+ virtual jboolean hasNext();
+ virtual ::java::lang::Object * next();
+ virtual void remove();
+public: // actually package-private
+ ::java::util::concurrent::LinkedBlockingDeque$Node * __attribute__((aligned(__alignof__( ::java::lang::Object)))) next__;
+ ::java::lang::Object * nextItem;
+private:
+ ::java::util::concurrent::LinkedBlockingDeque$Node * lastRet;
+public: // actually package-private
+ ::java::util::concurrent::LinkedBlockingDeque * this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_LinkedBlockingDeque$AbstractItr__
diff --git a/libjava/java/util/concurrent/LinkedBlockingDeque$DescendingItr.h b/libjava/java/util/concurrent/LinkedBlockingDeque$DescendingItr.h
new file mode 100644
index 000000000..a18b4d979
--- /dev/null
+++ b/libjava/java/util/concurrent/LinkedBlockingDeque$DescendingItr.h
@@ -0,0 +1,23 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_LinkedBlockingDeque$DescendingItr__
+#define __java_util_concurrent_LinkedBlockingDeque$DescendingItr__
+
+#pragma interface
+
+#include <java/util/concurrent/LinkedBlockingDeque$AbstractItr.h>
+
+class java::util::concurrent::LinkedBlockingDeque$DescendingItr : public ::java::util::concurrent::LinkedBlockingDeque$AbstractItr
+{
+
+ LinkedBlockingDeque$DescendingItr(::java::util::concurrent::LinkedBlockingDeque *);
+public: // actually package-private
+ virtual void advance();
+ LinkedBlockingDeque$DescendingItr(::java::util::concurrent::LinkedBlockingDeque *, ::java::util::concurrent::LinkedBlockingDeque$DescendingItr *);
+ ::java::util::concurrent::LinkedBlockingDeque * __attribute__((aligned(__alignof__( ::java::util::concurrent::LinkedBlockingDeque$AbstractItr)))) this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_LinkedBlockingDeque$DescendingItr__
diff --git a/libjava/java/util/concurrent/LinkedBlockingDeque$Itr.h b/libjava/java/util/concurrent/LinkedBlockingDeque$Itr.h
new file mode 100644
index 000000000..ad17e7a5e
--- /dev/null
+++ b/libjava/java/util/concurrent/LinkedBlockingDeque$Itr.h
@@ -0,0 +1,23 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_LinkedBlockingDeque$Itr__
+#define __java_util_concurrent_LinkedBlockingDeque$Itr__
+
+#pragma interface
+
+#include <java/util/concurrent/LinkedBlockingDeque$AbstractItr.h>
+
+class java::util::concurrent::LinkedBlockingDeque$Itr : public ::java::util::concurrent::LinkedBlockingDeque$AbstractItr
+{
+
+ LinkedBlockingDeque$Itr(::java::util::concurrent::LinkedBlockingDeque *);
+public: // actually package-private
+ virtual void advance();
+ LinkedBlockingDeque$Itr(::java::util::concurrent::LinkedBlockingDeque *, ::java::util::concurrent::LinkedBlockingDeque$Itr *);
+ ::java::util::concurrent::LinkedBlockingDeque * __attribute__((aligned(__alignof__( ::java::util::concurrent::LinkedBlockingDeque$AbstractItr)))) this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_LinkedBlockingDeque$Itr__
diff --git a/libjava/java/util/concurrent/LinkedBlockingDeque$Node.h b/libjava/java/util/concurrent/LinkedBlockingDeque$Node.h
new file mode 100644
index 000000000..423279f47
--- /dev/null
+++ b/libjava/java/util/concurrent/LinkedBlockingDeque$Node.h
@@ -0,0 +1,23 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_LinkedBlockingDeque$Node__
+#define __java_util_concurrent_LinkedBlockingDeque$Node__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::LinkedBlockingDeque$Node : public ::java::lang::Object
+{
+
+public: // actually package-private
+ LinkedBlockingDeque$Node(::java::lang::Object *, ::java::util::concurrent::LinkedBlockingDeque$Node *, ::java::util::concurrent::LinkedBlockingDeque$Node *);
+ ::java::lang::Object * __attribute__((aligned(__alignof__( ::java::lang::Object)))) item;
+ ::java::util::concurrent::LinkedBlockingDeque$Node * prev;
+ ::java::util::concurrent::LinkedBlockingDeque$Node * next;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_LinkedBlockingDeque$Node__
diff --git a/libjava/java/util/concurrent/LinkedBlockingDeque.h b/libjava/java/util/concurrent/LinkedBlockingDeque.h
new file mode 100644
index 000000000..43d3adf4a
--- /dev/null
+++ b/libjava/java/util/concurrent/LinkedBlockingDeque.h
@@ -0,0 +1,96 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_LinkedBlockingDeque__
+#define __java_util_concurrent_LinkedBlockingDeque__
+
+#pragma interface
+
+#include <java/util/AbstractQueue.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::LinkedBlockingDeque : public ::java::util::AbstractQueue
+{
+
+public:
+ LinkedBlockingDeque();
+ LinkedBlockingDeque(jint);
+ LinkedBlockingDeque(::java::util::Collection *);
+private:
+ jboolean linkFirst(::java::lang::Object *);
+ jboolean linkLast(::java::lang::Object *);
+ ::java::lang::Object * unlinkFirst();
+ ::java::lang::Object * unlinkLast();
+ void unlink(::java::util::concurrent::LinkedBlockingDeque$Node *);
+public:
+ virtual void addFirst(::java::lang::Object *);
+ virtual void addLast(::java::lang::Object *);
+ virtual jboolean offerFirst(::java::lang::Object *);
+ virtual jboolean offerLast(::java::lang::Object *);
+ virtual void putFirst(::java::lang::Object *);
+ virtual void putLast(::java::lang::Object *);
+ virtual jboolean offerFirst(::java::lang::Object *, jlong, ::java::util::concurrent::TimeUnit *);
+ virtual jboolean offerLast(::java::lang::Object *, jlong, ::java::util::concurrent::TimeUnit *);
+ virtual ::java::lang::Object * removeFirst();
+ virtual ::java::lang::Object * removeLast();
+ virtual ::java::lang::Object * pollFirst();
+ virtual ::java::lang::Object * pollLast();
+ virtual ::java::lang::Object * takeFirst();
+ virtual ::java::lang::Object * takeLast();
+ virtual ::java::lang::Object * pollFirst(jlong, ::java::util::concurrent::TimeUnit *);
+ virtual ::java::lang::Object * pollLast(jlong, ::java::util::concurrent::TimeUnit *);
+ virtual ::java::lang::Object * getFirst();
+ virtual ::java::lang::Object * getLast();
+ virtual ::java::lang::Object * peekFirst();
+ virtual ::java::lang::Object * peekLast();
+ virtual jboolean removeFirstOccurrence(::java::lang::Object *);
+ virtual jboolean removeLastOccurrence(::java::lang::Object *);
+ virtual jboolean add(::java::lang::Object *);
+ virtual jboolean offer(::java::lang::Object *);
+ virtual void put(::java::lang::Object *);
+ virtual jboolean offer(::java::lang::Object *, jlong, ::java::util::concurrent::TimeUnit *);
+ virtual ::java::lang::Object * remove();
+ virtual ::java::lang::Object * poll();
+ virtual ::java::lang::Object * take();
+ virtual ::java::lang::Object * poll(jlong, ::java::util::concurrent::TimeUnit *);
+ virtual ::java::lang::Object * element();
+ virtual ::java::lang::Object * peek();
+ virtual jint remainingCapacity();
+ virtual jint drainTo(::java::util::Collection *);
+ virtual jint drainTo(::java::util::Collection *, jint);
+ virtual void push(::java::lang::Object *);
+ virtual ::java::lang::Object * pop();
+ virtual jboolean remove(::java::lang::Object *);
+ virtual jint size();
+ virtual jboolean contains(::java::lang::Object *);
+public: // actually package-private
+ virtual jboolean removeNode(::java::util::concurrent::LinkedBlockingDeque$Node *);
+public:
+ virtual JArray< ::java::lang::Object * > * toArray();
+ virtual JArray< ::java::lang::Object * > * toArray(JArray< ::java::lang::Object * > *);
+ virtual ::java::lang::String * toString();
+ virtual void clear();
+ virtual ::java::util::Iterator * iterator();
+ virtual ::java::util::Iterator * descendingIterator();
+private:
+ void writeObject(::java::io::ObjectOutputStream *);
+ void readObject(::java::io::ObjectInputStream *);
+public: // actually package-private
+ static ::java::util::concurrent::locks::ReentrantLock * access$0(::java::util::concurrent::LinkedBlockingDeque *);
+ static ::java::util::concurrent::LinkedBlockingDeque$Node * access$1(::java::util::concurrent::LinkedBlockingDeque *);
+ static ::java::util::concurrent::LinkedBlockingDeque$Node * access$2(::java::util::concurrent::LinkedBlockingDeque *);
+private:
+ static const jlong serialVersionUID = -387911632671998426LL;
+ ::java::util::concurrent::LinkedBlockingDeque$Node * __attribute__((aligned(__alignof__( ::java::util::AbstractQueue)))) first;
+ ::java::util::concurrent::LinkedBlockingDeque$Node * last;
+ jint count;
+ jint capacity;
+ ::java::util::concurrent::locks::ReentrantLock * lock;
+ ::java::util::concurrent::locks::Condition * notEmpty;
+ ::java::util::concurrent::locks::Condition * notFull;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_LinkedBlockingDeque__
diff --git a/libjava/java/util/concurrent/LinkedBlockingQueue$Itr.h b/libjava/java/util/concurrent/LinkedBlockingQueue$Itr.h
new file mode 100644
index 000000000..e7e0e526d
--- /dev/null
+++ b/libjava/java/util/concurrent/LinkedBlockingQueue$Itr.h
@@ -0,0 +1,30 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_LinkedBlockingQueue$Itr__
+#define __java_util_concurrent_LinkedBlockingQueue$Itr__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::LinkedBlockingQueue$Itr : public ::java::lang::Object
+{
+
+public: // actually package-private
+ LinkedBlockingQueue$Itr(::java::util::concurrent::LinkedBlockingQueue *);
+public:
+ virtual jboolean hasNext();
+ virtual ::java::lang::Object * next();
+ virtual void remove();
+private:
+ ::java::util::concurrent::LinkedBlockingQueue$Node * __attribute__((aligned(__alignof__( ::java::lang::Object)))) current;
+ ::java::util::concurrent::LinkedBlockingQueue$Node * lastRet;
+ ::java::lang::Object * currentElement;
+public: // actually package-private
+ ::java::util::concurrent::LinkedBlockingQueue * this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_LinkedBlockingQueue$Itr__
diff --git a/libjava/java/util/concurrent/LinkedBlockingQueue$Node.h b/libjava/java/util/concurrent/LinkedBlockingQueue$Node.h
new file mode 100644
index 000000000..1cf8cda9d
--- /dev/null
+++ b/libjava/java/util/concurrent/LinkedBlockingQueue$Node.h
@@ -0,0 +1,22 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_LinkedBlockingQueue$Node__
+#define __java_util_concurrent_LinkedBlockingQueue$Node__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::LinkedBlockingQueue$Node : public ::java::lang::Object
+{
+
+public: // actually package-private
+ LinkedBlockingQueue$Node(::java::lang::Object *);
+ ::java::lang::Object * volatile __attribute__((aligned(__alignof__( ::java::lang::Object)))) item;
+ ::java::util::concurrent::LinkedBlockingQueue$Node * next;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_LinkedBlockingQueue$Node__
diff --git a/libjava/java/util/concurrent/LinkedBlockingQueue.h b/libjava/java/util/concurrent/LinkedBlockingQueue.h
new file mode 100644
index 000000000..42028ec38
--- /dev/null
+++ b/libjava/java/util/concurrent/LinkedBlockingQueue.h
@@ -0,0 +1,71 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_LinkedBlockingQueue__
+#define __java_util_concurrent_LinkedBlockingQueue__
+
+#pragma interface
+
+#include <java/util/AbstractQueue.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::LinkedBlockingQueue : public ::java::util::AbstractQueue
+{
+
+ void signalNotEmpty();
+ void signalNotFull();
+ void insert(::java::lang::Object *);
+ ::java::lang::Object * extract();
+ void fullyLock();
+ void fullyUnlock();
+public:
+ LinkedBlockingQueue();
+ LinkedBlockingQueue(jint);
+ LinkedBlockingQueue(::java::util::Collection *);
+ virtual jint size();
+ virtual jint remainingCapacity();
+ virtual void put(::java::lang::Object *);
+ virtual jboolean offer(::java::lang::Object *, jlong, ::java::util::concurrent::TimeUnit *);
+ virtual jboolean offer(::java::lang::Object *);
+ virtual ::java::lang::Object * take();
+ virtual ::java::lang::Object * poll(jlong, ::java::util::concurrent::TimeUnit *);
+ virtual ::java::lang::Object * poll();
+ virtual ::java::lang::Object * peek();
+ virtual jboolean remove(::java::lang::Object *);
+ virtual JArray< ::java::lang::Object * > * toArray();
+ virtual JArray< ::java::lang::Object * > * toArray(JArray< ::java::lang::Object * > *);
+ virtual ::java::lang::String * toString();
+ virtual void clear();
+ virtual jint drainTo(::java::util::Collection *);
+ virtual jint drainTo(::java::util::Collection *, jint);
+ virtual ::java::util::Iterator * iterator();
+private:
+ void writeObject(::java::io::ObjectOutputStream *);
+ void readObject(::java::io::ObjectInputStream *);
+public: // actually package-private
+ static ::java::util::concurrent::locks::ReentrantLock * access$0(::java::util::concurrent::LinkedBlockingQueue *);
+ static ::java::util::concurrent::locks::ReentrantLock * access$1(::java::util::concurrent::LinkedBlockingQueue *);
+ static ::java::util::concurrent::LinkedBlockingQueue$Node * access$2(::java::util::concurrent::LinkedBlockingQueue *);
+ static ::java::util::concurrent::LinkedBlockingQueue$Node * access$3(::java::util::concurrent::LinkedBlockingQueue *);
+ static void access$4(::java::util::concurrent::LinkedBlockingQueue *, ::java::util::concurrent::LinkedBlockingQueue$Node *);
+ static ::java::util::concurrent::atomic::AtomicInteger * access$5(::java::util::concurrent::LinkedBlockingQueue *);
+ static jint access$6(::java::util::concurrent::LinkedBlockingQueue *);
+ static ::java::util::concurrent::locks::Condition * access$7(::java::util::concurrent::LinkedBlockingQueue *);
+private:
+ static const jlong serialVersionUID = -6903933977591709194LL;
+ jint __attribute__((aligned(__alignof__( ::java::util::AbstractQueue)))) capacity;
+ ::java::util::concurrent::atomic::AtomicInteger * count;
+ ::java::util::concurrent::LinkedBlockingQueue$Node * head;
+ ::java::util::concurrent::LinkedBlockingQueue$Node * last;
+ ::java::util::concurrent::locks::ReentrantLock * takeLock;
+ ::java::util::concurrent::locks::Condition * notEmpty;
+ ::java::util::concurrent::locks::ReentrantLock * putLock;
+ ::java::util::concurrent::locks::Condition * notFull;
+public: // actually package-private
+ static jboolean $assertionsDisabled;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_LinkedBlockingQueue__
diff --git a/libjava/java/util/concurrent/PriorityBlockingQueue$Itr.h b/libjava/java/util/concurrent/PriorityBlockingQueue$Itr.h
new file mode 100644
index 000000000..c64407182
--- /dev/null
+++ b/libjava/java/util/concurrent/PriorityBlockingQueue$Itr.h
@@ -0,0 +1,31 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_PriorityBlockingQueue$Itr__
+#define __java_util_concurrent_PriorityBlockingQueue$Itr__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::PriorityBlockingQueue$Itr : public ::java::lang::Object
+{
+
+public: // actually package-private
+ PriorityBlockingQueue$Itr(::java::util::concurrent::PriorityBlockingQueue *, JArray< ::java::lang::Object * > *);
+public:
+ virtual jboolean hasNext();
+ virtual ::java::lang::Object * next();
+ virtual void remove();
+public: // actually package-private
+ JArray< ::java::lang::Object * > * __attribute__((aligned(__alignof__( ::java::lang::Object)))) array;
+ jint cursor;
+ jint lastRet;
+ ::java::util::concurrent::PriorityBlockingQueue * this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_PriorityBlockingQueue$Itr__
diff --git a/libjava/java/util/concurrent/PriorityBlockingQueue.h b/libjava/java/util/concurrent/PriorityBlockingQueue.h
new file mode 100644
index 000000000..ad5d8bb40
--- /dev/null
+++ b/libjava/java/util/concurrent/PriorityBlockingQueue.h
@@ -0,0 +1,57 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_PriorityBlockingQueue__
+#define __java_util_concurrent_PriorityBlockingQueue__
+
+#pragma interface
+
+#include <java/util/AbstractQueue.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::PriorityBlockingQueue : public ::java::util::AbstractQueue
+{
+
+public:
+ PriorityBlockingQueue();
+ PriorityBlockingQueue(jint);
+ PriorityBlockingQueue(jint, ::java::util::Comparator *);
+ PriorityBlockingQueue(::java::util::Collection *);
+ virtual jboolean add(::java::lang::Object *);
+ virtual jboolean offer(::java::lang::Object *);
+ virtual void put(::java::lang::Object *);
+ virtual jboolean offer(::java::lang::Object *, jlong, ::java::util::concurrent::TimeUnit *);
+ virtual ::java::lang::Object * poll();
+ virtual ::java::lang::Object * take();
+ virtual ::java::lang::Object * poll(jlong, ::java::util::concurrent::TimeUnit *);
+ virtual ::java::lang::Object * peek();
+ virtual ::java::util::Comparator * comparator();
+ virtual jint size();
+ virtual jint remainingCapacity();
+ virtual jboolean remove(::java::lang::Object *);
+ virtual jboolean contains(::java::lang::Object *);
+ virtual JArray< ::java::lang::Object * > * toArray();
+ virtual ::java::lang::String * toString();
+ virtual jint drainTo(::java::util::Collection *);
+ virtual jint drainTo(::java::util::Collection *, jint);
+ virtual void clear();
+ virtual JArray< ::java::lang::Object * > * toArray(JArray< ::java::lang::Object * > *);
+ virtual ::java::util::Iterator * iterator();
+private:
+ void writeObject(::java::io::ObjectOutputStream *);
+public: // actually package-private
+ static ::java::util::concurrent::locks::ReentrantLock * access$0(::java::util::concurrent::PriorityBlockingQueue *);
+ static ::java::util::PriorityQueue * access$1(::java::util::concurrent::PriorityBlockingQueue *);
+private:
+ static const jlong serialVersionUID = 5595510919245408276LL;
+ ::java::util::PriorityQueue * __attribute__((aligned(__alignof__( ::java::util::AbstractQueue)))) q;
+ ::java::util::concurrent::locks::ReentrantLock * lock;
+ ::java::util::concurrent::locks::Condition * notEmpty;
+public: // actually package-private
+ static jboolean $assertionsDisabled;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_PriorityBlockingQueue__
diff --git a/libjava/java/util/concurrent/RejectedExecutionException.h b/libjava/java/util/concurrent/RejectedExecutionException.h
new file mode 100644
index 000000000..4606d2d94
--- /dev/null
+++ b/libjava/java/util/concurrent/RejectedExecutionException.h
@@ -0,0 +1,25 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_RejectedExecutionException__
+#define __java_util_concurrent_RejectedExecutionException__
+
+#pragma interface
+
+#include <java/lang/RuntimeException.h>
+
+class java::util::concurrent::RejectedExecutionException : public ::java::lang::RuntimeException
+{
+
+public:
+ RejectedExecutionException();
+ RejectedExecutionException(::java::lang::String *);
+ RejectedExecutionException(::java::lang::String *, ::java::lang::Throwable *);
+ RejectedExecutionException(::java::lang::Throwable *);
+private:
+ static const jlong serialVersionUID = -375805702767069545LL;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_RejectedExecutionException__
diff --git a/libjava/java/util/concurrent/RejectedExecutionHandler.h b/libjava/java/util/concurrent/RejectedExecutionHandler.h
new file mode 100644
index 000000000..8e1ac4f3f
--- /dev/null
+++ b/libjava/java/util/concurrent/RejectedExecutionHandler.h
@@ -0,0 +1,19 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_RejectedExecutionHandler__
+#define __java_util_concurrent_RejectedExecutionHandler__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::RejectedExecutionHandler : public ::java::lang::Object
+{
+
+public:
+ virtual void rejectedExecution(::java::lang::Runnable *, ::java::util::concurrent::ThreadPoolExecutor *) = 0;
+ static ::java::lang::Class class$;
+} __attribute__ ((java_interface));
+
+#endif // __java_util_concurrent_RejectedExecutionHandler__
diff --git a/libjava/java/util/concurrent/RunnableFuture.h b/libjava/java/util/concurrent/RunnableFuture.h
new file mode 100644
index 000000000..281dccc83
--- /dev/null
+++ b/libjava/java/util/concurrent/RunnableFuture.h
@@ -0,0 +1,24 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_RunnableFuture__
+#define __java_util_concurrent_RunnableFuture__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::RunnableFuture : public ::java::lang::Object
+{
+
+public:
+ virtual void run() = 0;
+ virtual jboolean cancel(jboolean) = 0;
+ virtual jboolean isCancelled() = 0;
+ virtual jboolean isDone() = 0;
+ virtual ::java::lang::Object * get() = 0;
+ virtual ::java::lang::Object * get(jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ static ::java::lang::Class class$;
+} __attribute__ ((java_interface));
+
+#endif // __java_util_concurrent_RunnableFuture__
diff --git a/libjava/java/util/concurrent/RunnableScheduledFuture.h b/libjava/java/util/concurrent/RunnableScheduledFuture.h
new file mode 100644
index 000000000..0846d65c9
--- /dev/null
+++ b/libjava/java/util/concurrent/RunnableScheduledFuture.h
@@ -0,0 +1,27 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_RunnableScheduledFuture__
+#define __java_util_concurrent_RunnableScheduledFuture__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::RunnableScheduledFuture : public ::java::lang::Object
+{
+
+public:
+ virtual jboolean isPeriodic() = 0;
+ virtual void run() = 0;
+ virtual jboolean cancel(jboolean) = 0;
+ virtual jboolean isCancelled() = 0;
+ virtual jboolean isDone() = 0;
+ virtual ::java::lang::Object * get() = 0;
+ virtual ::java::lang::Object * get(jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ virtual jlong getDelay(::java::util::concurrent::TimeUnit *) = 0;
+ virtual jint compareTo(::java::lang::Object *) = 0;
+ static ::java::lang::Class class$;
+} __attribute__ ((java_interface));
+
+#endif // __java_util_concurrent_RunnableScheduledFuture__
diff --git a/libjava/java/util/concurrent/ScheduledExecutorService.h b/libjava/java/util/concurrent/ScheduledExecutorService.h
new file mode 100644
index 000000000..9041e395b
--- /dev/null
+++ b/libjava/java/util/concurrent/ScheduledExecutorService.h
@@ -0,0 +1,35 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ScheduledExecutorService__
+#define __java_util_concurrent_ScheduledExecutorService__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::ScheduledExecutorService : public ::java::lang::Object
+{
+
+public:
+ virtual ::java::util::concurrent::ScheduledFuture * schedule(::java::lang::Runnable *, jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ virtual ::java::util::concurrent::ScheduledFuture * schedule(::java::util::concurrent::Callable *, jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ virtual ::java::util::concurrent::ScheduledFuture * scheduleAtFixedRate(::java::lang::Runnable *, jlong, jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ virtual ::java::util::concurrent::ScheduledFuture * scheduleWithFixedDelay(::java::lang::Runnable *, jlong, jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ virtual void shutdown() = 0;
+ virtual ::java::util::List * shutdownNow() = 0;
+ virtual jboolean isShutdown() = 0;
+ virtual jboolean isTerminated() = 0;
+ virtual jboolean awaitTermination(jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ virtual ::java::util::concurrent::Future * submit(::java::util::concurrent::Callable *) = 0;
+ virtual ::java::util::concurrent::Future * submit(::java::lang::Runnable *, ::java::lang::Object *) = 0;
+ virtual ::java::util::concurrent::Future * submit(::java::lang::Runnable *) = 0;
+ virtual ::java::util::List * invokeAll(::java::util::Collection *) = 0;
+ virtual ::java::util::List * invokeAll(::java::util::Collection *, jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ virtual ::java::lang::Object * invokeAny(::java::util::Collection *) = 0;
+ virtual ::java::lang::Object * invokeAny(::java::util::Collection *, jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ virtual void execute(::java::lang::Runnable *) = 0;
+ static ::java::lang::Class class$;
+} __attribute__ ((java_interface));
+
+#endif // __java_util_concurrent_ScheduledExecutorService__
diff --git a/libjava/java/util/concurrent/ScheduledFuture.h b/libjava/java/util/concurrent/ScheduledFuture.h
new file mode 100644
index 000000000..4cbf3b0fb
--- /dev/null
+++ b/libjava/java/util/concurrent/ScheduledFuture.h
@@ -0,0 +1,25 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ScheduledFuture__
+#define __java_util_concurrent_ScheduledFuture__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::ScheduledFuture : public ::java::lang::Object
+{
+
+public:
+ virtual jlong getDelay(::java::util::concurrent::TimeUnit *) = 0;
+ virtual jint compareTo(::java::lang::Object *) = 0;
+ virtual jboolean cancel(jboolean) = 0;
+ virtual jboolean isCancelled() = 0;
+ virtual jboolean isDone() = 0;
+ virtual ::java::lang::Object * get() = 0;
+ virtual ::java::lang::Object * get(jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ static ::java::lang::Class class$;
+} __attribute__ ((java_interface));
+
+#endif // __java_util_concurrent_ScheduledFuture__
diff --git a/libjava/java/util/concurrent/ScheduledThreadPoolExecutor$1.h b/libjava/java/util/concurrent/ScheduledThreadPoolExecutor$1.h
new file mode 100644
index 000000000..4991c96ca
--- /dev/null
+++ b/libjava/java/util/concurrent/ScheduledThreadPoolExecutor$1.h
@@ -0,0 +1,29 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ScheduledThreadPoolExecutor$1__
+#define __java_util_concurrent_ScheduledThreadPoolExecutor$1__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::ScheduledThreadPoolExecutor$1 : public ::java::lang::Object
+{
+
+public: // actually package-private
+ ScheduledThreadPoolExecutor$1(::java::util::concurrent::ScheduledThreadPoolExecutor$DelayedWorkQueue *);
+public:
+ virtual jboolean hasNext();
+ virtual ::java::lang::Runnable * ScheduledThreadPoolExecutor$1$next();
+ virtual void remove();
+ virtual ::java::lang::Object * next();
+private:
+ ::java::util::Iterator * __attribute__((aligned(__alignof__( ::java::lang::Object)))) it;
+public: // actually package-private
+ ::java::util::concurrent::ScheduledThreadPoolExecutor$DelayedWorkQueue * this$1;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ScheduledThreadPoolExecutor$1__
diff --git a/libjava/java/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue.h b/libjava/java/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue.h
new file mode 100644
index 000000000..26fac6254
--- /dev/null
+++ b/libjava/java/util/concurrent/ScheduledThreadPoolExecutor$DelayedWorkQueue.h
@@ -0,0 +1,58 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ScheduledThreadPoolExecutor$DelayedWorkQueue__
+#define __java_util_concurrent_ScheduledThreadPoolExecutor$DelayedWorkQueue__
+
+#pragma interface
+
+#include <java/util/AbstractCollection.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::ScheduledThreadPoolExecutor$DelayedWorkQueue : public ::java::util::AbstractCollection
+{
+
+ ScheduledThreadPoolExecutor$DelayedWorkQueue();
+public:
+ virtual ::java::lang::Runnable * ScheduledThreadPoolExecutor$DelayedWorkQueue$poll();
+ virtual ::java::lang::Runnable * ScheduledThreadPoolExecutor$DelayedWorkQueue$peek();
+ virtual ::java::lang::Runnable * ScheduledThreadPoolExecutor$DelayedWorkQueue$take();
+ virtual ::java::lang::Runnable * ScheduledThreadPoolExecutor$DelayedWorkQueue$poll(jlong, ::java::util::concurrent::TimeUnit *);
+ virtual jboolean ScheduledThreadPoolExecutor$DelayedWorkQueue$add(::java::lang::Runnable *);
+ virtual jboolean ScheduledThreadPoolExecutor$DelayedWorkQueue$offer(::java::lang::Runnable *);
+ virtual void ScheduledThreadPoolExecutor$DelayedWorkQueue$put(::java::lang::Runnable *);
+ virtual jboolean ScheduledThreadPoolExecutor$DelayedWorkQueue$offer(::java::lang::Runnable *, jlong, ::java::util::concurrent::TimeUnit *);
+ virtual ::java::lang::Runnable * ScheduledThreadPoolExecutor$DelayedWorkQueue$remove();
+ virtual ::java::lang::Runnable * ScheduledThreadPoolExecutor$DelayedWorkQueue$element();
+ virtual void clear();
+ virtual jint drainTo(::java::util::Collection *);
+ virtual jint drainTo(::java::util::Collection *, jint);
+ virtual jint remainingCapacity();
+ virtual jboolean remove(::java::lang::Object *);
+ virtual jboolean contains(::java::lang::Object *);
+ virtual jint size();
+ virtual jboolean isEmpty();
+ virtual JArray< ::java::lang::Object * > * toArray();
+ virtual JArray< ::java::lang::Object * > * toArray(JArray< ::java::lang::Object * > *);
+ virtual ::java::util::Iterator * iterator();
+ virtual ::java::lang::Object * element();
+ virtual ::java::lang::Object * poll(jlong, ::java::util::concurrent::TimeUnit *);
+ virtual ::java::lang::Object * poll();
+ virtual ::java::lang::Object * take();
+ virtual jboolean offer(::java::lang::Object *, jlong, ::java::util::concurrent::TimeUnit *);
+ virtual jboolean offer(::java::lang::Object *);
+ virtual ::java::lang::Object * peek();
+ virtual jboolean add(::java::lang::Object *);
+ virtual ::java::lang::Object * remove();
+ virtual void put(::java::lang::Object *);
+public: // actually package-private
+ static ::java::util::concurrent::DelayQueue * access$10(::java::util::concurrent::ScheduledThreadPoolExecutor$DelayedWorkQueue *);
+ ScheduledThreadPoolExecutor$DelayedWorkQueue(::java::util::concurrent::ScheduledThreadPoolExecutor$DelayedWorkQueue *);
+private:
+ ::java::util::concurrent::DelayQueue * __attribute__((aligned(__alignof__( ::java::util::AbstractCollection)))) dq;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ScheduledThreadPoolExecutor$DelayedWorkQueue__
diff --git a/libjava/java/util/concurrent/ScheduledThreadPoolExecutor$ScheduledFutureTask.h b/libjava/java/util/concurrent/ScheduledThreadPoolExecutor$ScheduledFutureTask.h
new file mode 100644
index 000000000..ba9ad31a4
--- /dev/null
+++ b/libjava/java/util/concurrent/ScheduledThreadPoolExecutor$ScheduledFutureTask.h
@@ -0,0 +1,40 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ScheduledThreadPoolExecutor$ScheduledFutureTask__
+#define __java_util_concurrent_ScheduledThreadPoolExecutor$ScheduledFutureTask__
+
+#pragma interface
+
+#include <java/util/concurrent/FutureTask.h>
+
+class java::util::concurrent::ScheduledThreadPoolExecutor$ScheduledFutureTask : public ::java::util::concurrent::FutureTask
+{
+
+public: // actually package-private
+ ScheduledThreadPoolExecutor$ScheduledFutureTask(::java::util::concurrent::ScheduledThreadPoolExecutor *, ::java::lang::Runnable *, ::java::lang::Object *, jlong);
+ ScheduledThreadPoolExecutor$ScheduledFutureTask(::java::util::concurrent::ScheduledThreadPoolExecutor *, ::java::lang::Runnable *, ::java::lang::Object *, jlong, jlong);
+ ScheduledThreadPoolExecutor$ScheduledFutureTask(::java::util::concurrent::ScheduledThreadPoolExecutor *, ::java::util::concurrent::Callable *, jlong);
+public:
+ virtual jlong getDelay(::java::util::concurrent::TimeUnit *);
+ virtual jint ScheduledThreadPoolExecutor$ScheduledFutureTask$compareTo(::java::util::concurrent::Delayed *);
+ virtual jboolean isPeriodic();
+private:
+ void runPeriodic();
+public:
+ virtual void run();
+ virtual jint compareTo(::java::lang::Object *);
+public: // actually package-private
+ static jboolean access$1(::java::util::concurrent::ScheduledThreadPoolExecutor$ScheduledFutureTask *);
+ static void access$2(::java::util::concurrent::ScheduledThreadPoolExecutor$ScheduledFutureTask *);
+private:
+ jlong __attribute__((aligned(__alignof__( ::java::util::concurrent::FutureTask)))) sequenceNumber;
+ jlong time;
+ jlong period;
+public: // actually package-private
+ ::java::util::concurrent::ScheduledThreadPoolExecutor * this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ScheduledThreadPoolExecutor$ScheduledFutureTask__
diff --git a/libjava/java/util/concurrent/ScheduledThreadPoolExecutor.h b/libjava/java/util/concurrent/ScheduledThreadPoolExecutor.h
new file mode 100644
index 000000000..8e651b36a
--- /dev/null
+++ b/libjava/java/util/concurrent/ScheduledThreadPoolExecutor.h
@@ -0,0 +1,56 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ScheduledThreadPoolExecutor__
+#define __java_util_concurrent_ScheduledThreadPoolExecutor__
+
+#pragma interface
+
+#include <java/util/concurrent/ThreadPoolExecutor.h>
+
+class java::util::concurrent::ScheduledThreadPoolExecutor : public ::java::util::concurrent::ThreadPoolExecutor
+{
+
+public: // actually package-private
+ virtual jlong now();
+private:
+ void delayedExecute(::java::lang::Runnable *);
+ void cancelUnwantedTasks();
+public:
+ virtual jboolean remove(::java::lang::Runnable *);
+public: // actually protected
+ virtual ::java::util::concurrent::RunnableScheduledFuture * decorateTask(::java::lang::Runnable *, ::java::util::concurrent::RunnableScheduledFuture *);
+ virtual ::java::util::concurrent::RunnableScheduledFuture * decorateTask(::java::util::concurrent::Callable *, ::java::util::concurrent::RunnableScheduledFuture *);
+public:
+ ScheduledThreadPoolExecutor(jint);
+ ScheduledThreadPoolExecutor(jint, ::java::util::concurrent::ThreadFactory *);
+ ScheduledThreadPoolExecutor(jint, ::java::util::concurrent::RejectedExecutionHandler *);
+ ScheduledThreadPoolExecutor(jint, ::java::util::concurrent::ThreadFactory *, ::java::util::concurrent::RejectedExecutionHandler *);
+ virtual ::java::util::concurrent::ScheduledFuture * schedule(::java::lang::Runnable *, jlong, ::java::util::concurrent::TimeUnit *);
+ virtual ::java::util::concurrent::ScheduledFuture * schedule(::java::util::concurrent::Callable *, jlong, ::java::util::concurrent::TimeUnit *);
+ virtual ::java::util::concurrent::ScheduledFuture * scheduleAtFixedRate(::java::lang::Runnable *, jlong, jlong, ::java::util::concurrent::TimeUnit *);
+ virtual ::java::util::concurrent::ScheduledFuture * scheduleWithFixedDelay(::java::lang::Runnable *, jlong, jlong, ::java::util::concurrent::TimeUnit *);
+ virtual void execute(::java::lang::Runnable *);
+ virtual ::java::util::concurrent::Future * submit(::java::lang::Runnable *);
+ virtual ::java::util::concurrent::Future * submit(::java::lang::Runnable *, ::java::lang::Object *);
+ virtual ::java::util::concurrent::Future * submit(::java::util::concurrent::Callable *);
+ virtual void setContinueExistingPeriodicTasksAfterShutdownPolicy(jboolean);
+ virtual jboolean getContinueExistingPeriodicTasksAfterShutdownPolicy();
+ virtual void setExecuteExistingDelayedTasksAfterShutdownPolicy(jboolean);
+ virtual jboolean getExecuteExistingDelayedTasksAfterShutdownPolicy();
+ virtual void shutdown();
+ virtual ::java::util::List * shutdownNow();
+ virtual ::java::util::concurrent::BlockingQueue * getQueue();
+public: // actually package-private
+ static ::java::util::concurrent::atomic::AtomicLong * access$0();
+ static ::java::util::concurrent::BlockingQueue * access$1(::java::util::concurrent::ScheduledThreadPoolExecutor *);
+private:
+ jboolean volatile __attribute__((aligned(__alignof__( ::java::util::concurrent::ThreadPoolExecutor)))) continueExistingPeriodicTasksAfterShutdown;
+ jboolean volatile executeExistingDelayedTasksAfterShutdown;
+ static ::java::util::concurrent::atomic::AtomicLong * sequencer;
+ static jlong NANO_ORIGIN;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ScheduledThreadPoolExecutor__
diff --git a/libjava/java/util/concurrent/Semaphore$FairSync.h b/libjava/java/util/concurrent/Semaphore$FairSync.h
new file mode 100644
index 000000000..ac323695b
--- /dev/null
+++ b/libjava/java/util/concurrent/Semaphore$FairSync.h
@@ -0,0 +1,24 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Semaphore$FairSync__
+#define __java_util_concurrent_Semaphore$FairSync__
+
+#pragma interface
+
+#include <java/util/concurrent/Semaphore$Sync.h>
+
+class java::util::concurrent::Semaphore$FairSync : public ::java::util::concurrent::Semaphore$Sync
+{
+
+public: // actually package-private
+ Semaphore$FairSync(jint);
+public: // actually protected
+ jint tryAcquireShared(jint);
+private:
+ static const jlong serialVersionUID = 2014338818796000944LL;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_Semaphore$FairSync__
diff --git a/libjava/java/util/concurrent/Semaphore$NonfairSync.h b/libjava/java/util/concurrent/Semaphore$NonfairSync.h
new file mode 100644
index 000000000..2a03f1ac2
--- /dev/null
+++ b/libjava/java/util/concurrent/Semaphore$NonfairSync.h
@@ -0,0 +1,24 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Semaphore$NonfairSync__
+#define __java_util_concurrent_Semaphore$NonfairSync__
+
+#pragma interface
+
+#include <java/util/concurrent/Semaphore$Sync.h>
+
+class java::util::concurrent::Semaphore$NonfairSync : public ::java::util::concurrent::Semaphore$Sync
+{
+
+public: // actually package-private
+ Semaphore$NonfairSync(jint);
+public: // actually protected
+ jint tryAcquireShared(jint);
+private:
+ static const jlong serialVersionUID = -2694183684443567898LL;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_Semaphore$NonfairSync__
diff --git a/libjava/java/util/concurrent/Semaphore$Sync.h b/libjava/java/util/concurrent/Semaphore$Sync.h
new file mode 100644
index 000000000..98464b2e5
--- /dev/null
+++ b/libjava/java/util/concurrent/Semaphore$Sync.h
@@ -0,0 +1,29 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Semaphore$Sync__
+#define __java_util_concurrent_Semaphore$Sync__
+
+#pragma interface
+
+#include <java/util/concurrent/locks/AbstractQueuedSynchronizer.h>
+
+class java::util::concurrent::Semaphore$Sync : public ::java::util::concurrent::locks::AbstractQueuedSynchronizer
+{
+
+public: // actually package-private
+ Semaphore$Sync(jint);
+ virtual jint getPermits();
+ virtual jint nonfairTryAcquireShared(jint);
+public: // actually protected
+ virtual jboolean tryReleaseShared(jint);
+public: // actually package-private
+ virtual void reducePermits(jint);
+ virtual jint drainPermits();
+private:
+ static const jlong serialVersionUID = 1192457210091910933LL;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_Semaphore$Sync__
diff --git a/libjava/java/util/concurrent/Semaphore.h b/libjava/java/util/concurrent/Semaphore.h
new file mode 100644
index 000000000..41755ddcd
--- /dev/null
+++ b/libjava/java/util/concurrent/Semaphore.h
@@ -0,0 +1,46 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_Semaphore__
+#define __java_util_concurrent_Semaphore__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::Semaphore : public ::java::lang::Object
+{
+
+public:
+ Semaphore(jint);
+ Semaphore(jint, jboolean);
+ virtual void acquire();
+ virtual void acquireUninterruptibly();
+ virtual jboolean tryAcquire();
+ virtual jboolean tryAcquire(jlong, ::java::util::concurrent::TimeUnit *);
+ virtual void release();
+ virtual void acquire(jint);
+ virtual void acquireUninterruptibly(jint);
+ virtual jboolean tryAcquire(jint);
+ virtual jboolean tryAcquire(jint, jlong, ::java::util::concurrent::TimeUnit *);
+ virtual void release(jint);
+ virtual jint availablePermits();
+ virtual jint drainPermits();
+public: // actually protected
+ virtual void reducePermits(jint);
+public:
+ virtual jboolean isFair();
+ virtual jboolean hasQueuedThreads();
+ virtual jint getQueueLength();
+public: // actually protected
+ virtual ::java::util::Collection * getQueuedThreads();
+public:
+ virtual ::java::lang::String * toString();
+private:
+ static const jlong serialVersionUID = -3222578661600680210LL;
+ ::java::util::concurrent::Semaphore$Sync * __attribute__((aligned(__alignof__( ::java::lang::Object)))) sync;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_Semaphore__
diff --git a/libjava/java/util/concurrent/SynchronousQueue$EmptyIterator.h b/libjava/java/util/concurrent/SynchronousQueue$EmptyIterator.h
new file mode 100644
index 000000000..793fb9a10
--- /dev/null
+++ b/libjava/java/util/concurrent/SynchronousQueue$EmptyIterator.h
@@ -0,0 +1,23 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_SynchronousQueue$EmptyIterator__
+#define __java_util_concurrent_SynchronousQueue$EmptyIterator__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::SynchronousQueue$EmptyIterator : public ::java::lang::Object
+{
+
+public: // actually package-private
+ SynchronousQueue$EmptyIterator();
+public:
+ virtual jboolean hasNext();
+ virtual ::java::lang::Object * next();
+ virtual void remove();
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_SynchronousQueue$EmptyIterator__
diff --git a/libjava/java/util/concurrent/SynchronousQueue$FifoWaitQueue.h b/libjava/java/util/concurrent/SynchronousQueue$FifoWaitQueue.h
new file mode 100644
index 000000000..ba636900d
--- /dev/null
+++ b/libjava/java/util/concurrent/SynchronousQueue$FifoWaitQueue.h
@@ -0,0 +1,22 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_SynchronousQueue$FifoWaitQueue__
+#define __java_util_concurrent_SynchronousQueue$FifoWaitQueue__
+
+#pragma interface
+
+#include <java/util/concurrent/SynchronousQueue$WaitQueue.h>
+
+class java::util::concurrent::SynchronousQueue$FifoWaitQueue : public ::java::util::concurrent::SynchronousQueue$WaitQueue
+{
+
+public: // actually package-private
+ SynchronousQueue$FifoWaitQueue();
+private:
+ static const jlong serialVersionUID = -3623113410248163686LL;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_SynchronousQueue$FifoWaitQueue__
diff --git a/libjava/java/util/concurrent/SynchronousQueue$LifoWaitQueue.h b/libjava/java/util/concurrent/SynchronousQueue$LifoWaitQueue.h
new file mode 100644
index 000000000..dedfaca8c
--- /dev/null
+++ b/libjava/java/util/concurrent/SynchronousQueue$LifoWaitQueue.h
@@ -0,0 +1,22 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_SynchronousQueue$LifoWaitQueue__
+#define __java_util_concurrent_SynchronousQueue$LifoWaitQueue__
+
+#pragma interface
+
+#include <java/util/concurrent/SynchronousQueue$WaitQueue.h>
+
+class java::util::concurrent::SynchronousQueue$LifoWaitQueue : public ::java::util::concurrent::SynchronousQueue$WaitQueue
+{
+
+public: // actually package-private
+ SynchronousQueue$LifoWaitQueue();
+private:
+ static const jlong serialVersionUID = -3633113410248163686LL;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_SynchronousQueue$LifoWaitQueue__
diff --git a/libjava/java/util/concurrent/SynchronousQueue$TransferQueue$QNode.h b/libjava/java/util/concurrent/SynchronousQueue$TransferQueue$QNode.h
new file mode 100644
index 000000000..105c64e66
--- /dev/null
+++ b/libjava/java/util/concurrent/SynchronousQueue$TransferQueue$QNode.h
@@ -0,0 +1,31 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_SynchronousQueue$TransferQueue$QNode__
+#define __java_util_concurrent_SynchronousQueue$TransferQueue$QNode__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::SynchronousQueue$TransferQueue$QNode : public ::java::lang::Object
+{
+
+public: // actually package-private
+ SynchronousQueue$TransferQueue$QNode(::java::lang::Object *, jboolean);
+ jboolean casNext(::java::util::concurrent::SynchronousQueue$TransferQueue$QNode *, ::java::util::concurrent::SynchronousQueue$TransferQueue$QNode *);
+ jboolean casItem(::java::lang::Object *, ::java::lang::Object *);
+ void tryCancel(::java::lang::Object *);
+ jboolean isCancelled();
+ jboolean isOffList();
+ ::java::util::concurrent::SynchronousQueue$TransferQueue$QNode * volatile __attribute__((aligned(__alignof__( ::java::lang::Object)))) next;
+ ::java::lang::Object * volatile item;
+ ::java::lang::Thread * volatile waiter;
+ jboolean isData;
+ static ::java::util::concurrent::atomic::AtomicReferenceFieldUpdater * nextUpdater;
+ static ::java::util::concurrent::atomic::AtomicReferenceFieldUpdater * itemUpdater;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_SynchronousQueue$TransferQueue$QNode__
diff --git a/libjava/java/util/concurrent/SynchronousQueue$TransferQueue.h b/libjava/java/util/concurrent/SynchronousQueue$TransferQueue.h
new file mode 100644
index 000000000..921c36377
--- /dev/null
+++ b/libjava/java/util/concurrent/SynchronousQueue$TransferQueue.h
@@ -0,0 +1,32 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_SynchronousQueue$TransferQueue__
+#define __java_util_concurrent_SynchronousQueue$TransferQueue__
+
+#pragma interface
+
+#include <java/util/concurrent/SynchronousQueue$Transferer.h>
+
+class java::util::concurrent::SynchronousQueue$TransferQueue : public ::java::util::concurrent::SynchronousQueue$Transferer
+{
+
+public: // actually package-private
+ SynchronousQueue$TransferQueue();
+ void advanceHead(::java::util::concurrent::SynchronousQueue$TransferQueue$QNode *, ::java::util::concurrent::SynchronousQueue$TransferQueue$QNode *);
+ void advanceTail(::java::util::concurrent::SynchronousQueue$TransferQueue$QNode *, ::java::util::concurrent::SynchronousQueue$TransferQueue$QNode *);
+ jboolean casCleanMe(::java::util::concurrent::SynchronousQueue$TransferQueue$QNode *, ::java::util::concurrent::SynchronousQueue$TransferQueue$QNode *);
+ ::java::lang::Object * transfer(::java::lang::Object *, jboolean, jlong);
+ ::java::lang::Object * awaitFulfill(::java::util::concurrent::SynchronousQueue$TransferQueue$QNode *, ::java::lang::Object *, jboolean, jlong);
+ void clean(::java::util::concurrent::SynchronousQueue$TransferQueue$QNode *, ::java::util::concurrent::SynchronousQueue$TransferQueue$QNode *);
+ ::java::util::concurrent::SynchronousQueue$TransferQueue$QNode * volatile __attribute__((aligned(__alignof__( ::java::util::concurrent::SynchronousQueue$Transferer)))) head;
+ ::java::util::concurrent::SynchronousQueue$TransferQueue$QNode * volatile tail;
+ ::java::util::concurrent::SynchronousQueue$TransferQueue$QNode * volatile cleanMe;
+ static ::java::util::concurrent::atomic::AtomicReferenceFieldUpdater * headUpdater;
+ static ::java::util::concurrent::atomic::AtomicReferenceFieldUpdater * tailUpdater;
+ static ::java::util::concurrent::atomic::AtomicReferenceFieldUpdater * cleanMeUpdater;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_SynchronousQueue$TransferQueue__
diff --git a/libjava/java/util/concurrent/SynchronousQueue$TransferStack$SNode.h b/libjava/java/util/concurrent/SynchronousQueue$TransferStack$SNode.h
new file mode 100644
index 000000000..48e22f2a6
--- /dev/null
+++ b/libjava/java/util/concurrent/SynchronousQueue$TransferStack$SNode.h
@@ -0,0 +1,31 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_SynchronousQueue$TransferStack$SNode__
+#define __java_util_concurrent_SynchronousQueue$TransferStack$SNode__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::SynchronousQueue$TransferStack$SNode : public ::java::lang::Object
+{
+
+public: // actually package-private
+ SynchronousQueue$TransferStack$SNode(::java::lang::Object *);
+ jboolean casNext(::java::util::concurrent::SynchronousQueue$TransferStack$SNode *, ::java::util::concurrent::SynchronousQueue$TransferStack$SNode *);
+ jboolean tryMatch(::java::util::concurrent::SynchronousQueue$TransferStack$SNode *);
+ void tryCancel();
+ jboolean isCancelled();
+ ::java::util::concurrent::SynchronousQueue$TransferStack$SNode * volatile __attribute__((aligned(__alignof__( ::java::lang::Object)))) next;
+ ::java::util::concurrent::SynchronousQueue$TransferStack$SNode * volatile match;
+ ::java::lang::Thread * volatile waiter;
+ ::java::lang::Object * item;
+ jint mode;
+ static ::java::util::concurrent::atomic::AtomicReferenceFieldUpdater * nextUpdater;
+ static ::java::util::concurrent::atomic::AtomicReferenceFieldUpdater * matchUpdater;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_SynchronousQueue$TransferStack$SNode__
diff --git a/libjava/java/util/concurrent/SynchronousQueue$TransferStack.h b/libjava/java/util/concurrent/SynchronousQueue$TransferStack.h
new file mode 100644
index 000000000..5722c419b
--- /dev/null
+++ b/libjava/java/util/concurrent/SynchronousQueue$TransferStack.h
@@ -0,0 +1,32 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_SynchronousQueue$TransferStack__
+#define __java_util_concurrent_SynchronousQueue$TransferStack__
+
+#pragma interface
+
+#include <java/util/concurrent/SynchronousQueue$Transferer.h>
+
+class java::util::concurrent::SynchronousQueue$TransferStack : public ::java::util::concurrent::SynchronousQueue$Transferer
+{
+
+public: // actually package-private
+ SynchronousQueue$TransferStack();
+ static jboolean isFulfilling(jint);
+ jboolean casHead(::java::util::concurrent::SynchronousQueue$TransferStack$SNode *, ::java::util::concurrent::SynchronousQueue$TransferStack$SNode *);
+ static ::java::util::concurrent::SynchronousQueue$TransferStack$SNode * snode(::java::util::concurrent::SynchronousQueue$TransferStack$SNode *, ::java::lang::Object *, ::java::util::concurrent::SynchronousQueue$TransferStack$SNode *, jint);
+ ::java::lang::Object * transfer(::java::lang::Object *, jboolean, jlong);
+ ::java::util::concurrent::SynchronousQueue$TransferStack$SNode * awaitFulfill(::java::util::concurrent::SynchronousQueue$TransferStack$SNode *, jboolean, jlong);
+ jboolean shouldSpin(::java::util::concurrent::SynchronousQueue$TransferStack$SNode *);
+ void clean(::java::util::concurrent::SynchronousQueue$TransferStack$SNode *);
+ static const jint REQUEST = 0;
+ static const jint DATA = 1;
+ static const jint FULFILLING = 2;
+ ::java::util::concurrent::SynchronousQueue$TransferStack$SNode * volatile __attribute__((aligned(__alignof__( ::java::util::concurrent::SynchronousQueue$Transferer)))) head;
+ static ::java::util::concurrent::atomic::AtomicReferenceFieldUpdater * headUpdater;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_SynchronousQueue$TransferStack__
diff --git a/libjava/java/util/concurrent/SynchronousQueue$Transferer.h b/libjava/java/util/concurrent/SynchronousQueue$Transferer.h
new file mode 100644
index 000000000..1b135af58
--- /dev/null
+++ b/libjava/java/util/concurrent/SynchronousQueue$Transferer.h
@@ -0,0 +1,21 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_SynchronousQueue$Transferer__
+#define __java_util_concurrent_SynchronousQueue$Transferer__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::SynchronousQueue$Transferer : public ::java::lang::Object
+{
+
+public: // actually package-private
+ SynchronousQueue$Transferer();
+ virtual ::java::lang::Object * transfer(::java::lang::Object *, jboolean, jlong) = 0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_SynchronousQueue$Transferer__
diff --git a/libjava/java/util/concurrent/SynchronousQueue$WaitQueue.h b/libjava/java/util/concurrent/SynchronousQueue$WaitQueue.h
new file mode 100644
index 000000000..36f384d32
--- /dev/null
+++ b/libjava/java/util/concurrent/SynchronousQueue$WaitQueue.h
@@ -0,0 +1,20 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_SynchronousQueue$WaitQueue__
+#define __java_util_concurrent_SynchronousQueue$WaitQueue__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::SynchronousQueue$WaitQueue : public ::java::lang::Object
+{
+
+public: // actually package-private
+ SynchronousQueue$WaitQueue();
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_SynchronousQueue$WaitQueue__
diff --git a/libjava/java/util/concurrent/SynchronousQueue.h b/libjava/java/util/concurrent/SynchronousQueue.h
new file mode 100644
index 000000000..7606ddcfe
--- /dev/null
+++ b/libjava/java/util/concurrent/SynchronousQueue.h
@@ -0,0 +1,58 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_SynchronousQueue__
+#define __java_util_concurrent_SynchronousQueue__
+
+#pragma interface
+
+#include <java/util/AbstractQueue.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::SynchronousQueue : public ::java::util::AbstractQueue
+{
+
+public:
+ SynchronousQueue();
+ SynchronousQueue(jboolean);
+ virtual void put(::java::lang::Object *);
+ virtual jboolean offer(::java::lang::Object *, jlong, ::java::util::concurrent::TimeUnit *);
+ virtual jboolean offer(::java::lang::Object *);
+ virtual ::java::lang::Object * take();
+ virtual ::java::lang::Object * poll(jlong, ::java::util::concurrent::TimeUnit *);
+ virtual ::java::lang::Object * poll();
+ virtual jboolean isEmpty();
+ virtual jint size();
+ virtual jint remainingCapacity();
+ virtual void clear();
+ virtual jboolean contains(::java::lang::Object *);
+ virtual jboolean remove(::java::lang::Object *);
+ virtual jboolean containsAll(::java::util::Collection *);
+ virtual jboolean removeAll(::java::util::Collection *);
+ virtual jboolean retainAll(::java::util::Collection *);
+ virtual ::java::lang::Object * peek();
+ virtual ::java::util::Iterator * iterator();
+ virtual JArray< ::java::lang::Object * > * toArray();
+ virtual JArray< ::java::lang::Object * > * toArray(JArray< ::java::lang::Object * > *);
+ virtual jint drainTo(::java::util::Collection *);
+ virtual jint drainTo(::java::util::Collection *, jint);
+private:
+ void writeObject(::java::io::ObjectOutputStream *);
+ void readObject(::java::io::ObjectInputStream *);
+ static const jlong serialVersionUID = -3223113410248163686LL;
+public: // actually package-private
+ static jint NCPUS;
+ static jint maxTimedSpins;
+ static jint maxUntimedSpins;
+ static const jlong spinForTimeoutThreshold = 1000LL;
+private:
+ ::java::util::concurrent::SynchronousQueue$Transferer * volatile __attribute__((aligned(__alignof__( ::java::util::AbstractQueue)))) transferer;
+ ::java::util::concurrent::locks::ReentrantLock * qlock;
+ ::java::util::concurrent::SynchronousQueue$WaitQueue * waitingProducers;
+ ::java::util::concurrent::SynchronousQueue$WaitQueue * waitingConsumers;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_SynchronousQueue__
diff --git a/libjava/java/util/concurrent/ThreadFactory.h b/libjava/java/util/concurrent/ThreadFactory.h
new file mode 100644
index 000000000..c1037df60
--- /dev/null
+++ b/libjava/java/util/concurrent/ThreadFactory.h
@@ -0,0 +1,19 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ThreadFactory__
+#define __java_util_concurrent_ThreadFactory__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::ThreadFactory : public ::java::lang::Object
+{
+
+public:
+ virtual ::java::lang::Thread * newThread(::java::lang::Runnable *) = 0;
+ static ::java::lang::Class class$;
+} __attribute__ ((java_interface));
+
+#endif // __java_util_concurrent_ThreadFactory__
diff --git a/libjava/java/util/concurrent/ThreadPoolExecutor$AbortPolicy.h b/libjava/java/util/concurrent/ThreadPoolExecutor$AbortPolicy.h
new file mode 100644
index 000000000..9f61c798b
--- /dev/null
+++ b/libjava/java/util/concurrent/ThreadPoolExecutor$AbortPolicy.h
@@ -0,0 +1,20 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ThreadPoolExecutor$AbortPolicy__
+#define __java_util_concurrent_ThreadPoolExecutor$AbortPolicy__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::ThreadPoolExecutor$AbortPolicy : public ::java::lang::Object
+{
+
+public:
+ ThreadPoolExecutor$AbortPolicy();
+ virtual void rejectedExecution(::java::lang::Runnable *, ::java::util::concurrent::ThreadPoolExecutor *);
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ThreadPoolExecutor$AbortPolicy__
diff --git a/libjava/java/util/concurrent/ThreadPoolExecutor$CallerRunsPolicy.h b/libjava/java/util/concurrent/ThreadPoolExecutor$CallerRunsPolicy.h
new file mode 100644
index 000000000..169a9c3b9
--- /dev/null
+++ b/libjava/java/util/concurrent/ThreadPoolExecutor$CallerRunsPolicy.h
@@ -0,0 +1,20 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ThreadPoolExecutor$CallerRunsPolicy__
+#define __java_util_concurrent_ThreadPoolExecutor$CallerRunsPolicy__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::ThreadPoolExecutor$CallerRunsPolicy : public ::java::lang::Object
+{
+
+public:
+ ThreadPoolExecutor$CallerRunsPolicy();
+ virtual void rejectedExecution(::java::lang::Runnable *, ::java::util::concurrent::ThreadPoolExecutor *);
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ThreadPoolExecutor$CallerRunsPolicy__
diff --git a/libjava/java/util/concurrent/ThreadPoolExecutor$DiscardOldestPolicy.h b/libjava/java/util/concurrent/ThreadPoolExecutor$DiscardOldestPolicy.h
new file mode 100644
index 000000000..77b8e0535
--- /dev/null
+++ b/libjava/java/util/concurrent/ThreadPoolExecutor$DiscardOldestPolicy.h
@@ -0,0 +1,20 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ThreadPoolExecutor$DiscardOldestPolicy__
+#define __java_util_concurrent_ThreadPoolExecutor$DiscardOldestPolicy__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::ThreadPoolExecutor$DiscardOldestPolicy : public ::java::lang::Object
+{
+
+public:
+ ThreadPoolExecutor$DiscardOldestPolicy();
+ virtual void rejectedExecution(::java::lang::Runnable *, ::java::util::concurrent::ThreadPoolExecutor *);
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ThreadPoolExecutor$DiscardOldestPolicy__
diff --git a/libjava/java/util/concurrent/ThreadPoolExecutor$DiscardPolicy.h b/libjava/java/util/concurrent/ThreadPoolExecutor$DiscardPolicy.h
new file mode 100644
index 000000000..771f828c6
--- /dev/null
+++ b/libjava/java/util/concurrent/ThreadPoolExecutor$DiscardPolicy.h
@@ -0,0 +1,20 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ThreadPoolExecutor$DiscardPolicy__
+#define __java_util_concurrent_ThreadPoolExecutor$DiscardPolicy__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::ThreadPoolExecutor$DiscardPolicy : public ::java::lang::Object
+{
+
+public:
+ ThreadPoolExecutor$DiscardPolicy();
+ virtual void rejectedExecution(::java::lang::Runnable *, ::java::util::concurrent::ThreadPoolExecutor *);
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ThreadPoolExecutor$DiscardPolicy__
diff --git a/libjava/java/util/concurrent/ThreadPoolExecutor$Worker.h b/libjava/java/util/concurrent/ThreadPoolExecutor$Worker.h
new file mode 100644
index 000000000..a1b5dc3fe
--- /dev/null
+++ b/libjava/java/util/concurrent/ThreadPoolExecutor$Worker.h
@@ -0,0 +1,34 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ThreadPoolExecutor$Worker__
+#define __java_util_concurrent_ThreadPoolExecutor$Worker__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::ThreadPoolExecutor$Worker : public ::java::lang::Object
+{
+
+public: // actually package-private
+ ThreadPoolExecutor$Worker(::java::util::concurrent::ThreadPoolExecutor *, ::java::lang::Runnable *);
+ virtual jboolean isActive();
+ virtual void interruptIfIdle();
+ virtual void interruptNow();
+private:
+ void runTask(::java::lang::Runnable *);
+public:
+ virtual void run();
+private:
+ ::java::util::concurrent::locks::ReentrantLock * __attribute__((aligned(__alignof__( ::java::lang::Object)))) runLock;
+ ::java::lang::Runnable * firstTask;
+public: // actually package-private
+ jlong volatile completedTasks;
+ ::java::lang::Thread * thread;
+ ::java::util::concurrent::ThreadPoolExecutor * this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ThreadPoolExecutor$Worker__
diff --git a/libjava/java/util/concurrent/ThreadPoolExecutor.h b/libjava/java/util/concurrent/ThreadPoolExecutor.h
new file mode 100644
index 000000000..b69b1f655
--- /dev/null
+++ b/libjava/java/util/concurrent/ThreadPoolExecutor.h
@@ -0,0 +1,97 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_ThreadPoolExecutor__
+#define __java_util_concurrent_ThreadPoolExecutor__
+
+#pragma interface
+
+#include <java/util/concurrent/AbstractExecutorService.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::ThreadPoolExecutor : public ::java::util::concurrent::AbstractExecutorService
+{
+
+public: // actually package-private
+ virtual void reject(::java::lang::Runnable *);
+private:
+ ::java::lang::Thread * addThread(::java::lang::Runnable *);
+ jboolean addIfUnderCorePoolSize(::java::lang::Runnable *);
+ jint addIfUnderMaximumPoolSize(::java::lang::Runnable *);
+public: // actually package-private
+ virtual ::java::lang::Runnable * getTask();
+ virtual void interruptIdleWorkers();
+ virtual void workerDone(::java::util::concurrent::ThreadPoolExecutor$Worker *);
+public:
+ ThreadPoolExecutor(jint, jint, jlong, ::java::util::concurrent::TimeUnit *, ::java::util::concurrent::BlockingQueue *);
+ ThreadPoolExecutor(jint, jint, jlong, ::java::util::concurrent::TimeUnit *, ::java::util::concurrent::BlockingQueue *, ::java::util::concurrent::ThreadFactory *);
+ ThreadPoolExecutor(jint, jint, jlong, ::java::util::concurrent::TimeUnit *, ::java::util::concurrent::BlockingQueue *, ::java::util::concurrent::RejectedExecutionHandler *);
+ ThreadPoolExecutor(jint, jint, jlong, ::java::util::concurrent::TimeUnit *, ::java::util::concurrent::BlockingQueue *, ::java::util::concurrent::ThreadFactory *, ::java::util::concurrent::RejectedExecutionHandler *);
+ virtual void execute(::java::lang::Runnable *);
+ virtual void shutdown();
+ virtual ::java::util::List * shutdownNow();
+ virtual jboolean isShutdown();
+ virtual jboolean isTerminating();
+ virtual jboolean isTerminated();
+ virtual jboolean awaitTermination(jlong, ::java::util::concurrent::TimeUnit *);
+public: // actually protected
+ virtual void finalize();
+public:
+ virtual void setThreadFactory(::java::util::concurrent::ThreadFactory *);
+ virtual ::java::util::concurrent::ThreadFactory * getThreadFactory();
+ virtual void setRejectedExecutionHandler(::java::util::concurrent::RejectedExecutionHandler *);
+ virtual ::java::util::concurrent::RejectedExecutionHandler * getRejectedExecutionHandler();
+ virtual ::java::util::concurrent::BlockingQueue * getQueue();
+ virtual jboolean remove(::java::lang::Runnable *);
+ virtual void purge();
+ virtual void setCorePoolSize(jint);
+ virtual jint getCorePoolSize();
+ virtual jboolean prestartCoreThread();
+ virtual jint prestartAllCoreThreads();
+ virtual jboolean allowsCoreThreadTimeOut();
+ virtual void allowCoreThreadTimeOut(jboolean);
+ virtual void setMaximumPoolSize(jint);
+ virtual jint getMaximumPoolSize();
+ virtual void setKeepAliveTime(jlong, ::java::util::concurrent::TimeUnit *);
+ virtual jlong getKeepAliveTime(::java::util::concurrent::TimeUnit *);
+ virtual jint getPoolSize();
+ virtual jint getActiveCount();
+ virtual jint getLargestPoolSize();
+ virtual jlong getTaskCount();
+ virtual jlong getCompletedTaskCount();
+public: // actually protected
+ virtual void beforeExecute(::java::lang::Thread *, ::java::lang::Runnable *);
+ virtual void afterExecute(::java::lang::Runnable *, ::java::lang::Throwable *);
+ virtual void terminated();
+private:
+ static JArray< ::java::lang::Runnable * > * EMPTY_RUNNABLE_ARRAY;
+ static ::java::lang::RuntimePermission * shutdownPerm;
+ ::java::util::concurrent::BlockingQueue * __attribute__((aligned(__alignof__( ::java::util::concurrent::AbstractExecutorService)))) workQueue;
+ ::java::util::concurrent::locks::ReentrantLock * mainLock;
+ ::java::util::concurrent::locks::Condition * termination;
+ ::java::util::HashSet * workers;
+ jlong volatile keepAliveTime;
+ jboolean volatile allowCoreThreadTimeOut__;
+ jint volatile corePoolSize;
+ jint volatile maximumPoolSize;
+ jint volatile poolSize;
+public: // actually package-private
+ jint volatile runState;
+ static const jint RUNNING = 0;
+ static const jint SHUTDOWN = 1;
+ static const jint STOP = 2;
+ static const jint TERMINATED = 3;
+private:
+ ::java::util::concurrent::RejectedExecutionHandler * volatile handler;
+ ::java::util::concurrent::ThreadFactory * volatile threadFactory;
+ jint largestPoolSize;
+ jlong completedTaskCount;
+ static ::java::util::concurrent::RejectedExecutionHandler * defaultHandler;
+public: // actually package-private
+ static jboolean $assertionsDisabled;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_ThreadPoolExecutor__
diff --git a/libjava/java/util/concurrent/TimeUnit$1.h b/libjava/java/util/concurrent/TimeUnit$1.h
new file mode 100644
index 000000000..8d3121d2e
--- /dev/null
+++ b/libjava/java/util/concurrent/TimeUnit$1.h
@@ -0,0 +1,31 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_TimeUnit$1__
+#define __java_util_concurrent_TimeUnit$1__
+
+#pragma interface
+
+#include <java/util/concurrent/TimeUnit.h>
+
+class java::util::concurrent::TimeUnit$1 : public ::java::util::concurrent::TimeUnit
+{
+
+public: // actually package-private
+ TimeUnit$1(::java::lang::String *, jint);
+public:
+ virtual jlong toNanos(jlong);
+ virtual jlong toMicros(jlong);
+ virtual jlong toMillis(jlong);
+ virtual jlong toSeconds(jlong);
+ virtual jlong toMinutes(jlong);
+ virtual jlong toHours(jlong);
+ virtual jlong toDays(jlong);
+ virtual jlong convert(jlong, ::java::util::concurrent::TimeUnit *);
+public: // actually package-private
+ virtual jint excessNanos(jlong, jlong);
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_TimeUnit$1__
diff --git a/libjava/java/util/concurrent/TimeUnit$2.h b/libjava/java/util/concurrent/TimeUnit$2.h
new file mode 100644
index 000000000..dff67ed15
--- /dev/null
+++ b/libjava/java/util/concurrent/TimeUnit$2.h
@@ -0,0 +1,31 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_TimeUnit$2__
+#define __java_util_concurrent_TimeUnit$2__
+
+#pragma interface
+
+#include <java/util/concurrent/TimeUnit.h>
+
+class java::util::concurrent::TimeUnit$2 : public ::java::util::concurrent::TimeUnit
+{
+
+public: // actually package-private
+ TimeUnit$2(::java::lang::String *, jint);
+public:
+ virtual jlong toNanos(jlong);
+ virtual jlong toMicros(jlong);
+ virtual jlong toMillis(jlong);
+ virtual jlong toSeconds(jlong);
+ virtual jlong toMinutes(jlong);
+ virtual jlong toHours(jlong);
+ virtual jlong toDays(jlong);
+ virtual jlong convert(jlong, ::java::util::concurrent::TimeUnit *);
+public: // actually package-private
+ virtual jint excessNanos(jlong, jlong);
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_TimeUnit$2__
diff --git a/libjava/java/util/concurrent/TimeUnit$3.h b/libjava/java/util/concurrent/TimeUnit$3.h
new file mode 100644
index 000000000..f587ef899
--- /dev/null
+++ b/libjava/java/util/concurrent/TimeUnit$3.h
@@ -0,0 +1,31 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_TimeUnit$3__
+#define __java_util_concurrent_TimeUnit$3__
+
+#pragma interface
+
+#include <java/util/concurrent/TimeUnit.h>
+
+class java::util::concurrent::TimeUnit$3 : public ::java::util::concurrent::TimeUnit
+{
+
+public: // actually package-private
+ TimeUnit$3(::java::lang::String *, jint);
+public:
+ virtual jlong toNanos(jlong);
+ virtual jlong toMicros(jlong);
+ virtual jlong toMillis(jlong);
+ virtual jlong toSeconds(jlong);
+ virtual jlong toMinutes(jlong);
+ virtual jlong toHours(jlong);
+ virtual jlong toDays(jlong);
+ virtual jlong convert(jlong, ::java::util::concurrent::TimeUnit *);
+public: // actually package-private
+ virtual jint excessNanos(jlong, jlong);
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_TimeUnit$3__
diff --git a/libjava/java/util/concurrent/TimeUnit$4.h b/libjava/java/util/concurrent/TimeUnit$4.h
new file mode 100644
index 000000000..9a3bf8e2a
--- /dev/null
+++ b/libjava/java/util/concurrent/TimeUnit$4.h
@@ -0,0 +1,31 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_TimeUnit$4__
+#define __java_util_concurrent_TimeUnit$4__
+
+#pragma interface
+
+#include <java/util/concurrent/TimeUnit.h>
+
+class java::util::concurrent::TimeUnit$4 : public ::java::util::concurrent::TimeUnit
+{
+
+public: // actually package-private
+ TimeUnit$4(::java::lang::String *, jint);
+public:
+ virtual jlong toNanos(jlong);
+ virtual jlong toMicros(jlong);
+ virtual jlong toMillis(jlong);
+ virtual jlong toSeconds(jlong);
+ virtual jlong toMinutes(jlong);
+ virtual jlong toHours(jlong);
+ virtual jlong toDays(jlong);
+ virtual jlong convert(jlong, ::java::util::concurrent::TimeUnit *);
+public: // actually package-private
+ virtual jint excessNanos(jlong, jlong);
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_TimeUnit$4__
diff --git a/libjava/java/util/concurrent/TimeUnit$5.h b/libjava/java/util/concurrent/TimeUnit$5.h
new file mode 100644
index 000000000..342b88eaf
--- /dev/null
+++ b/libjava/java/util/concurrent/TimeUnit$5.h
@@ -0,0 +1,31 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_TimeUnit$5__
+#define __java_util_concurrent_TimeUnit$5__
+
+#pragma interface
+
+#include <java/util/concurrent/TimeUnit.h>
+
+class java::util::concurrent::TimeUnit$5 : public ::java::util::concurrent::TimeUnit
+{
+
+public: // actually package-private
+ TimeUnit$5(::java::lang::String *, jint);
+public:
+ virtual jlong toNanos(jlong);
+ virtual jlong toMicros(jlong);
+ virtual jlong toMillis(jlong);
+ virtual jlong toSeconds(jlong);
+ virtual jlong toMinutes(jlong);
+ virtual jlong toHours(jlong);
+ virtual jlong toDays(jlong);
+ virtual jlong convert(jlong, ::java::util::concurrent::TimeUnit *);
+public: // actually package-private
+ virtual jint excessNanos(jlong, jlong);
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_TimeUnit$5__
diff --git a/libjava/java/util/concurrent/TimeUnit$6.h b/libjava/java/util/concurrent/TimeUnit$6.h
new file mode 100644
index 000000000..3fad9aa60
--- /dev/null
+++ b/libjava/java/util/concurrent/TimeUnit$6.h
@@ -0,0 +1,31 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_TimeUnit$6__
+#define __java_util_concurrent_TimeUnit$6__
+
+#pragma interface
+
+#include <java/util/concurrent/TimeUnit.h>
+
+class java::util::concurrent::TimeUnit$6 : public ::java::util::concurrent::TimeUnit
+{
+
+public: // actually package-private
+ TimeUnit$6(::java::lang::String *, jint);
+public:
+ virtual jlong toNanos(jlong);
+ virtual jlong toMicros(jlong);
+ virtual jlong toMillis(jlong);
+ virtual jlong toSeconds(jlong);
+ virtual jlong toMinutes(jlong);
+ virtual jlong toHours(jlong);
+ virtual jlong toDays(jlong);
+ virtual jlong convert(jlong, ::java::util::concurrent::TimeUnit *);
+public: // actually package-private
+ virtual jint excessNanos(jlong, jlong);
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_TimeUnit$6__
diff --git a/libjava/java/util/concurrent/TimeUnit$7.h b/libjava/java/util/concurrent/TimeUnit$7.h
new file mode 100644
index 000000000..8fc3ec0b4
--- /dev/null
+++ b/libjava/java/util/concurrent/TimeUnit$7.h
@@ -0,0 +1,31 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_TimeUnit$7__
+#define __java_util_concurrent_TimeUnit$7__
+
+#pragma interface
+
+#include <java/util/concurrent/TimeUnit.h>
+
+class java::util::concurrent::TimeUnit$7 : public ::java::util::concurrent::TimeUnit
+{
+
+public: // actually package-private
+ TimeUnit$7(::java::lang::String *, jint);
+public:
+ virtual jlong toNanos(jlong);
+ virtual jlong toMicros(jlong);
+ virtual jlong toMillis(jlong);
+ virtual jlong toSeconds(jlong);
+ virtual jlong toMinutes(jlong);
+ virtual jlong toHours(jlong);
+ virtual jlong toDays(jlong);
+ virtual jlong convert(jlong, ::java::util::concurrent::TimeUnit *);
+public: // actually package-private
+ virtual jint excessNanos(jlong, jlong);
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_TimeUnit$7__
diff --git a/libjava/java/util/concurrent/TimeUnit.h b/libjava/java/util/concurrent/TimeUnit.h
new file mode 100644
index 000000000..fa6d497f6
--- /dev/null
+++ b/libjava/java/util/concurrent/TimeUnit.h
@@ -0,0 +1,61 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_TimeUnit__
+#define __java_util_concurrent_TimeUnit__
+
+#pragma interface
+
+#include <java/lang/Enum.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::TimeUnit : public ::java::lang::Enum
+{
+
+ TimeUnit(::java::lang::String *, jint);
+public: // actually package-private
+ static jlong x(jlong, jlong, jlong);
+public:
+ virtual jlong convert(jlong, ::java::util::concurrent::TimeUnit *);
+ virtual jlong toNanos(jlong);
+ virtual jlong toMicros(jlong);
+ virtual jlong toMillis(jlong);
+ virtual jlong toSeconds(jlong);
+ virtual jlong toMinutes(jlong);
+ virtual jlong toHours(jlong);
+ virtual jlong toDays(jlong);
+public: // actually package-private
+ virtual jint excessNanos(jlong, jlong) = 0;
+public:
+ virtual void timedWait(::java::lang::Object *, jlong);
+ virtual void timedJoin(::java::lang::Thread *, jlong);
+ virtual void sleep(jlong);
+ static JArray< ::java::util::concurrent::TimeUnit * > * values();
+ static ::java::util::concurrent::TimeUnit * valueOf(::java::lang::String *);
+public: // actually package-private
+ TimeUnit(::java::lang::String *, jint, ::java::util::concurrent::TimeUnit *);
+public:
+ static ::java::util::concurrent::TimeUnit * NANOSECONDS;
+ static ::java::util::concurrent::TimeUnit * MICROSECONDS;
+ static ::java::util::concurrent::TimeUnit * MILLISECONDS;
+ static ::java::util::concurrent::TimeUnit * SECONDS;
+ static ::java::util::concurrent::TimeUnit * MINUTES;
+ static ::java::util::concurrent::TimeUnit * HOURS;
+ static ::java::util::concurrent::TimeUnit * DAYS;
+public: // actually package-private
+ static const jlong C0 = 1LL;
+ static const jlong C1 = 1000LL;
+ static const jlong C2 = 1000000LL;
+ static const jlong C3 = 1000000000LL;
+ static const jlong C4 = 60000000000LL;
+ static const jlong C5 = 3600000000000LL;
+ static const jlong C6 = 86400000000000LL;
+ static const jlong MAX = 9223372036854775807LL;
+private:
+ static JArray< ::java::util::concurrent::TimeUnit * > * ENUM$VALUES;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_TimeUnit__
diff --git a/libjava/java/util/concurrent/TimeoutException.h b/libjava/java/util/concurrent/TimeoutException.h
new file mode 100644
index 000000000..6ce42b180
--- /dev/null
+++ b/libjava/java/util/concurrent/TimeoutException.h
@@ -0,0 +1,23 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_TimeoutException__
+#define __java_util_concurrent_TimeoutException__
+
+#pragma interface
+
+#include <java/lang/Exception.h>
+
+class java::util::concurrent::TimeoutException : public ::java::lang::Exception
+{
+
+public:
+ TimeoutException();
+ TimeoutException(::java::lang::String *);
+private:
+ static const jlong serialVersionUID = 1900926677490660714LL;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_TimeoutException__
diff --git a/libjava/java/util/concurrent/atomic/AtomicBoolean.h b/libjava/java/util/concurrent/atomic/AtomicBoolean.h
new file mode 100644
index 000000000..60d22a952
--- /dev/null
+++ b/libjava/java/util/concurrent/atomic/AtomicBoolean.h
@@ -0,0 +1,43 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_atomic_AtomicBoolean__
+#define __java_util_concurrent_atomic_AtomicBoolean__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+extern "Java"
+{
+ namespace sun
+ {
+ namespace misc
+ {
+ class Unsafe;
+ }
+ }
+}
+
+class java::util::concurrent::atomic::AtomicBoolean : public ::java::lang::Object
+{
+
+public:
+ AtomicBoolean(jboolean);
+ AtomicBoolean();
+ virtual jboolean get();
+ virtual jboolean compareAndSet(jboolean, jboolean);
+ virtual jboolean weakCompareAndSet(jboolean, jboolean);
+ virtual void set(jboolean);
+ virtual void lazySet(jboolean);
+ virtual jboolean getAndSet(jboolean);
+ virtual ::java::lang::String * toString();
+private:
+ static const jlong serialVersionUID = 4654671469794556979LL;
+ static ::sun::misc::Unsafe * unsafe;
+ static jlong valueOffset;
+ jint volatile __attribute__((aligned(__alignof__( ::java::lang::Object)))) value;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_atomic_AtomicBoolean__
diff --git a/libjava/java/util/concurrent/atomic/AtomicInteger.h b/libjava/java/util/concurrent/atomic/AtomicInteger.h
new file mode 100644
index 000000000..136a578b5
--- /dev/null
+++ b/libjava/java/util/concurrent/atomic/AtomicInteger.h
@@ -0,0 +1,53 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_atomic_AtomicInteger__
+#define __java_util_concurrent_atomic_AtomicInteger__
+
+#pragma interface
+
+#include <java/lang/Number.h>
+extern "Java"
+{
+ namespace sun
+ {
+ namespace misc
+ {
+ class Unsafe;
+ }
+ }
+}
+
+class java::util::concurrent::atomic::AtomicInteger : public ::java::lang::Number
+{
+
+public:
+ AtomicInteger(jint);
+ AtomicInteger();
+ virtual jint get();
+ virtual void set(jint);
+ virtual void lazySet(jint);
+ virtual jint getAndSet(jint);
+ virtual jboolean compareAndSet(jint, jint);
+ virtual jboolean weakCompareAndSet(jint, jint);
+ virtual jint getAndIncrement();
+ virtual jint getAndDecrement();
+ virtual jint getAndAdd(jint);
+ virtual jint incrementAndGet();
+ virtual jint decrementAndGet();
+ virtual jint addAndGet(jint);
+ virtual ::java::lang::String * toString();
+ virtual jint intValue();
+ virtual jlong longValue();
+ virtual jfloat floatValue();
+ virtual jdouble doubleValue();
+private:
+ static const jlong serialVersionUID = 6214790243416807050LL;
+ static ::sun::misc::Unsafe * unsafe;
+ static jlong valueOffset;
+ jint volatile __attribute__((aligned(__alignof__( ::java::lang::Number)))) value;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_atomic_AtomicInteger__
diff --git a/libjava/java/util/concurrent/atomic/AtomicIntegerArray.h b/libjava/java/util/concurrent/atomic/AtomicIntegerArray.h
new file mode 100644
index 000000000..f8db2173f
--- /dev/null
+++ b/libjava/java/util/concurrent/atomic/AtomicIntegerArray.h
@@ -0,0 +1,54 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_atomic_AtomicIntegerArray__
+#define __java_util_concurrent_atomic_AtomicIntegerArray__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+#include <gcj/array.h>
+
+extern "Java"
+{
+ namespace sun
+ {
+ namespace misc
+ {
+ class Unsafe;
+ }
+ }
+}
+
+class java::util::concurrent::atomic::AtomicIntegerArray : public ::java::lang::Object
+{
+
+ jlong rawIndex(jint);
+public:
+ AtomicIntegerArray(jint);
+ AtomicIntegerArray(JArray< jint > *);
+ virtual jint length();
+ virtual jint get(jint);
+ virtual void set(jint, jint);
+ virtual void lazySet(jint, jint);
+ virtual jint getAndSet(jint, jint);
+ virtual jboolean compareAndSet(jint, jint, jint);
+ virtual jboolean weakCompareAndSet(jint, jint, jint);
+ virtual jint getAndIncrement(jint);
+ virtual jint getAndDecrement(jint);
+ virtual jint getAndAdd(jint, jint);
+ virtual jint incrementAndGet(jint);
+ virtual jint decrementAndGet(jint);
+ virtual jint addAndGet(jint, jint);
+ virtual ::java::lang::String * toString();
+private:
+ static const jlong serialVersionUID = 2862133569453604235LL;
+ static ::sun::misc::Unsafe * unsafe;
+ static jint base;
+ static jint scale;
+ JArray< jint > * __attribute__((aligned(__alignof__( ::java::lang::Object)))) array;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_atomic_AtomicIntegerArray__
diff --git a/libjava/java/util/concurrent/atomic/AtomicIntegerFieldUpdater$AtomicIntegerFieldUpdaterImpl.h b/libjava/java/util/concurrent/atomic/AtomicIntegerFieldUpdater$AtomicIntegerFieldUpdaterImpl.h
new file mode 100644
index 000000000..ba2b7a5dc
--- /dev/null
+++ b/libjava/java/util/concurrent/atomic/AtomicIntegerFieldUpdater$AtomicIntegerFieldUpdaterImpl.h
@@ -0,0 +1,44 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_atomic_AtomicIntegerFieldUpdater$AtomicIntegerFieldUpdaterImpl__
+#define __java_util_concurrent_atomic_AtomicIntegerFieldUpdater$AtomicIntegerFieldUpdaterImpl__
+
+#pragma interface
+
+#include <java/util/concurrent/atomic/AtomicIntegerFieldUpdater.h>
+extern "Java"
+{
+ namespace sun
+ {
+ namespace misc
+ {
+ class Unsafe;
+ }
+ }
+}
+
+class java::util::concurrent::atomic::AtomicIntegerFieldUpdater$AtomicIntegerFieldUpdaterImpl : public ::java::util::concurrent::atomic::AtomicIntegerFieldUpdater
+{
+
+public: // actually package-private
+ AtomicIntegerFieldUpdater$AtomicIntegerFieldUpdaterImpl(::java::lang::Class *, ::java::lang::String *);
+private:
+ void fullCheck(::java::lang::Object *);
+public:
+ virtual jboolean compareAndSet(::java::lang::Object *, jint, jint);
+ virtual jboolean weakCompareAndSet(::java::lang::Object *, jint, jint);
+ virtual void set(::java::lang::Object *, jint);
+ virtual void lazySet(::java::lang::Object *, jint);
+ virtual jint get(::java::lang::Object *);
+private:
+ void ensureProtectedAccess(::java::lang::Object *);
+ static ::sun::misc::Unsafe * unsafe;
+ jlong __attribute__((aligned(__alignof__( ::java::util::concurrent::atomic::AtomicIntegerFieldUpdater)))) offset;
+ ::java::lang::Class * tclass;
+ ::java::lang::Class * cclass;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_atomic_AtomicIntegerFieldUpdater$AtomicIntegerFieldUpdaterImpl__
diff --git a/libjava/java/util/concurrent/atomic/AtomicIntegerFieldUpdater.h b/libjava/java/util/concurrent/atomic/AtomicIntegerFieldUpdater.h
new file mode 100644
index 000000000..e72055006
--- /dev/null
+++ b/libjava/java/util/concurrent/atomic/AtomicIntegerFieldUpdater.h
@@ -0,0 +1,34 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_atomic_AtomicIntegerFieldUpdater__
+#define __java_util_concurrent_atomic_AtomicIntegerFieldUpdater__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::atomic::AtomicIntegerFieldUpdater : public ::java::lang::Object
+{
+
+public:
+ static ::java::util::concurrent::atomic::AtomicIntegerFieldUpdater * newUpdater(::java::lang::Class *, ::java::lang::String *);
+public: // actually protected
+ AtomicIntegerFieldUpdater();
+public:
+ virtual jboolean compareAndSet(::java::lang::Object *, jint, jint) = 0;
+ virtual jboolean weakCompareAndSet(::java::lang::Object *, jint, jint) = 0;
+ virtual void set(::java::lang::Object *, jint) = 0;
+ virtual void lazySet(::java::lang::Object *, jint) = 0;
+ virtual jint get(::java::lang::Object *) = 0;
+ virtual jint getAndSet(::java::lang::Object *, jint);
+ virtual jint getAndIncrement(::java::lang::Object *);
+ virtual jint getAndDecrement(::java::lang::Object *);
+ virtual jint getAndAdd(::java::lang::Object *, jint);
+ virtual jint incrementAndGet(::java::lang::Object *);
+ virtual jint decrementAndGet(::java::lang::Object *);
+ virtual jint addAndGet(::java::lang::Object *, jint);
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_atomic_AtomicIntegerFieldUpdater__
diff --git a/libjava/java/util/concurrent/atomic/AtomicLong.h b/libjava/java/util/concurrent/atomic/AtomicLong.h
new file mode 100644
index 000000000..0d0c3b00f
--- /dev/null
+++ b/libjava/java/util/concurrent/atomic/AtomicLong.h
@@ -0,0 +1,57 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_atomic_AtomicLong__
+#define __java_util_concurrent_atomic_AtomicLong__
+
+#pragma interface
+
+#include <java/lang/Number.h>
+extern "Java"
+{
+ namespace sun
+ {
+ namespace misc
+ {
+ class Unsafe;
+ }
+ }
+}
+
+class java::util::concurrent::atomic::AtomicLong : public ::java::lang::Number
+{
+
+ static jboolean VMSupportsCS8();
+public:
+ AtomicLong(jlong);
+ AtomicLong();
+ virtual jlong get();
+ virtual void set(jlong);
+ virtual void lazySet(jlong);
+ virtual jlong getAndSet(jlong);
+ virtual jboolean compareAndSet(jlong, jlong);
+ virtual jboolean weakCompareAndSet(jlong, jlong);
+ virtual jlong getAndIncrement();
+ virtual jlong getAndDecrement();
+ virtual jlong getAndAdd(jlong);
+ virtual jlong incrementAndGet();
+ virtual jlong decrementAndGet();
+ virtual jlong addAndGet(jlong);
+ virtual ::java::lang::String * toString();
+ virtual jint intValue();
+ virtual jlong longValue();
+ virtual jfloat floatValue();
+ virtual jdouble doubleValue();
+private:
+ static const jlong serialVersionUID = 1927816293512124184LL;
+ static ::sun::misc::Unsafe * unsafe;
+ static jlong valueOffset;
+public: // actually package-private
+ static jboolean VM_SUPPORTS_LONG_CAS;
+private:
+ jlong volatile __attribute__((aligned(__alignof__( ::java::lang::Number)))) value;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_atomic_AtomicLong__
diff --git a/libjava/java/util/concurrent/atomic/AtomicLongArray.h b/libjava/java/util/concurrent/atomic/AtomicLongArray.h
new file mode 100644
index 000000000..797c60943
--- /dev/null
+++ b/libjava/java/util/concurrent/atomic/AtomicLongArray.h
@@ -0,0 +1,54 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_atomic_AtomicLongArray__
+#define __java_util_concurrent_atomic_AtomicLongArray__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+#include <gcj/array.h>
+
+extern "Java"
+{
+ namespace sun
+ {
+ namespace misc
+ {
+ class Unsafe;
+ }
+ }
+}
+
+class java::util::concurrent::atomic::AtomicLongArray : public ::java::lang::Object
+{
+
+ jlong rawIndex(jint);
+public:
+ AtomicLongArray(jint);
+ AtomicLongArray(JArray< jlong > *);
+ virtual jint length();
+ virtual jlong get(jint);
+ virtual void set(jint, jlong);
+ virtual void lazySet(jint, jlong);
+ virtual jlong getAndSet(jint, jlong);
+ virtual jboolean compareAndSet(jint, jlong, jlong);
+ virtual jboolean weakCompareAndSet(jint, jlong, jlong);
+ virtual jlong getAndIncrement(jint);
+ virtual jlong getAndDecrement(jint);
+ virtual jlong getAndAdd(jint, jlong);
+ virtual jlong incrementAndGet(jint);
+ virtual jlong decrementAndGet(jint);
+ virtual jlong addAndGet(jint, jlong);
+ virtual ::java::lang::String * toString();
+private:
+ static const jlong serialVersionUID = -2308431214976778248LL;
+ static ::sun::misc::Unsafe * unsafe;
+ static jint base;
+ static jint scale;
+ JArray< jlong > * __attribute__((aligned(__alignof__( ::java::lang::Object)))) array;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_atomic_AtomicLongArray__
diff --git a/libjava/java/util/concurrent/atomic/AtomicLongFieldUpdater$CASUpdater.h b/libjava/java/util/concurrent/atomic/AtomicLongFieldUpdater$CASUpdater.h
new file mode 100644
index 000000000..465b5333e
--- /dev/null
+++ b/libjava/java/util/concurrent/atomic/AtomicLongFieldUpdater$CASUpdater.h
@@ -0,0 +1,44 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_atomic_AtomicLongFieldUpdater$CASUpdater__
+#define __java_util_concurrent_atomic_AtomicLongFieldUpdater$CASUpdater__
+
+#pragma interface
+
+#include <java/util/concurrent/atomic/AtomicLongFieldUpdater.h>
+extern "Java"
+{
+ namespace sun
+ {
+ namespace misc
+ {
+ class Unsafe;
+ }
+ }
+}
+
+class java::util::concurrent::atomic::AtomicLongFieldUpdater$CASUpdater : public ::java::util::concurrent::atomic::AtomicLongFieldUpdater
+{
+
+public: // actually package-private
+ AtomicLongFieldUpdater$CASUpdater(::java::lang::Class *, ::java::lang::String *);
+private:
+ void fullCheck(::java::lang::Object *);
+public:
+ virtual jboolean compareAndSet(::java::lang::Object *, jlong, jlong);
+ virtual jboolean weakCompareAndSet(::java::lang::Object *, jlong, jlong);
+ virtual void set(::java::lang::Object *, jlong);
+ virtual void lazySet(::java::lang::Object *, jlong);
+ virtual jlong get(::java::lang::Object *);
+private:
+ void ensureProtectedAccess(::java::lang::Object *);
+ static ::sun::misc::Unsafe * unsafe;
+ jlong __attribute__((aligned(__alignof__( ::java::util::concurrent::atomic::AtomicLongFieldUpdater)))) offset;
+ ::java::lang::Class * tclass;
+ ::java::lang::Class * cclass;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_atomic_AtomicLongFieldUpdater$CASUpdater__
diff --git a/libjava/java/util/concurrent/atomic/AtomicLongFieldUpdater$LockedUpdater.h b/libjava/java/util/concurrent/atomic/AtomicLongFieldUpdater$LockedUpdater.h
new file mode 100644
index 000000000..f13fb1817
--- /dev/null
+++ b/libjava/java/util/concurrent/atomic/AtomicLongFieldUpdater$LockedUpdater.h
@@ -0,0 +1,44 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_atomic_AtomicLongFieldUpdater$LockedUpdater__
+#define __java_util_concurrent_atomic_AtomicLongFieldUpdater$LockedUpdater__
+
+#pragma interface
+
+#include <java/util/concurrent/atomic/AtomicLongFieldUpdater.h>
+extern "Java"
+{
+ namespace sun
+ {
+ namespace misc
+ {
+ class Unsafe;
+ }
+ }
+}
+
+class java::util::concurrent::atomic::AtomicLongFieldUpdater$LockedUpdater : public ::java::util::concurrent::atomic::AtomicLongFieldUpdater
+{
+
+public: // actually package-private
+ AtomicLongFieldUpdater$LockedUpdater(::java::lang::Class *, ::java::lang::String *);
+private:
+ void fullCheck(::java::lang::Object *);
+public:
+ virtual jboolean compareAndSet(::java::lang::Object *, jlong, jlong);
+ virtual jboolean weakCompareAndSet(::java::lang::Object *, jlong, jlong);
+ virtual void set(::java::lang::Object *, jlong);
+ virtual void lazySet(::java::lang::Object *, jlong);
+ virtual jlong get(::java::lang::Object *);
+private:
+ void ensureProtectedAccess(::java::lang::Object *);
+ static ::sun::misc::Unsafe * unsafe;
+ jlong __attribute__((aligned(__alignof__( ::java::util::concurrent::atomic::AtomicLongFieldUpdater)))) offset;
+ ::java::lang::Class * tclass;
+ ::java::lang::Class * cclass;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_atomic_AtomicLongFieldUpdater$LockedUpdater__
diff --git a/libjava/java/util/concurrent/atomic/AtomicLongFieldUpdater.h b/libjava/java/util/concurrent/atomic/AtomicLongFieldUpdater.h
new file mode 100644
index 000000000..4fb8137d1
--- /dev/null
+++ b/libjava/java/util/concurrent/atomic/AtomicLongFieldUpdater.h
@@ -0,0 +1,34 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_atomic_AtomicLongFieldUpdater__
+#define __java_util_concurrent_atomic_AtomicLongFieldUpdater__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::atomic::AtomicLongFieldUpdater : public ::java::lang::Object
+{
+
+public:
+ static ::java::util::concurrent::atomic::AtomicLongFieldUpdater * newUpdater(::java::lang::Class *, ::java::lang::String *);
+public: // actually protected
+ AtomicLongFieldUpdater();
+public:
+ virtual jboolean compareAndSet(::java::lang::Object *, jlong, jlong) = 0;
+ virtual jboolean weakCompareAndSet(::java::lang::Object *, jlong, jlong) = 0;
+ virtual void set(::java::lang::Object *, jlong) = 0;
+ virtual void lazySet(::java::lang::Object *, jlong) = 0;
+ virtual jlong get(::java::lang::Object *) = 0;
+ virtual jlong getAndSet(::java::lang::Object *, jlong);
+ virtual jlong getAndIncrement(::java::lang::Object *);
+ virtual jlong getAndDecrement(::java::lang::Object *);
+ virtual jlong getAndAdd(::java::lang::Object *, jlong);
+ virtual jlong incrementAndGet(::java::lang::Object *);
+ virtual jlong decrementAndGet(::java::lang::Object *);
+ virtual jlong addAndGet(::java::lang::Object *, jlong);
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_atomic_AtomicLongFieldUpdater__
diff --git a/libjava/java/util/concurrent/atomic/AtomicMarkableReference$ReferenceBooleanPair.h b/libjava/java/util/concurrent/atomic/AtomicMarkableReference$ReferenceBooleanPair.h
new file mode 100644
index 000000000..499b73b52
--- /dev/null
+++ b/libjava/java/util/concurrent/atomic/AtomicMarkableReference$ReferenceBooleanPair.h
@@ -0,0 +1,25 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_atomic_AtomicMarkableReference$ReferenceBooleanPair__
+#define __java_util_concurrent_atomic_AtomicMarkableReference$ReferenceBooleanPair__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::atomic::AtomicMarkableReference$ReferenceBooleanPair : public ::java::lang::Object
+{
+
+public: // actually package-private
+ AtomicMarkableReference$ReferenceBooleanPair(::java::lang::Object *, jboolean);
+ static ::java::lang::Object * access$0(::java::util::concurrent::atomic::AtomicMarkableReference$ReferenceBooleanPair *);
+ static jboolean access$1(::java::util::concurrent::atomic::AtomicMarkableReference$ReferenceBooleanPair *);
+private:
+ ::java::lang::Object * __attribute__((aligned(__alignof__( ::java::lang::Object)))) reference;
+ jboolean bit;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_atomic_AtomicMarkableReference$ReferenceBooleanPair__
diff --git a/libjava/java/util/concurrent/atomic/AtomicMarkableReference.h b/libjava/java/util/concurrent/atomic/AtomicMarkableReference.h
new file mode 100644
index 000000000..fe97809c5
--- /dev/null
+++ b/libjava/java/util/concurrent/atomic/AtomicMarkableReference.h
@@ -0,0 +1,31 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_atomic_AtomicMarkableReference__
+#define __java_util_concurrent_atomic_AtomicMarkableReference__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::atomic::AtomicMarkableReference : public ::java::lang::Object
+{
+
+public:
+ AtomicMarkableReference(::java::lang::Object *, jboolean);
+ virtual ::java::lang::Object * getReference();
+ virtual jboolean isMarked();
+ virtual ::java::lang::Object * get(JArray< jboolean > *);
+ virtual jboolean weakCompareAndSet(::java::lang::Object *, ::java::lang::Object *, jboolean, jboolean);
+ virtual jboolean compareAndSet(::java::lang::Object *, ::java::lang::Object *, jboolean, jboolean);
+ virtual void set(::java::lang::Object *, jboolean);
+ virtual jboolean attemptMark(::java::lang::Object *, jboolean);
+private:
+ ::java::util::concurrent::atomic::AtomicReference * __attribute__((aligned(__alignof__( ::java::lang::Object)))) atomicRef;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_atomic_AtomicMarkableReference__
diff --git a/libjava/java/util/concurrent/atomic/AtomicReference.h b/libjava/java/util/concurrent/atomic/AtomicReference.h
new file mode 100644
index 000000000..363fca6ea
--- /dev/null
+++ b/libjava/java/util/concurrent/atomic/AtomicReference.h
@@ -0,0 +1,43 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_atomic_AtomicReference__
+#define __java_util_concurrent_atomic_AtomicReference__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+extern "Java"
+{
+ namespace sun
+ {
+ namespace misc
+ {
+ class Unsafe;
+ }
+ }
+}
+
+class java::util::concurrent::atomic::AtomicReference : public ::java::lang::Object
+{
+
+public:
+ AtomicReference(::java::lang::Object *);
+ AtomicReference();
+ virtual ::java::lang::Object * get();
+ virtual void set(::java::lang::Object *);
+ virtual void lazySet(::java::lang::Object *);
+ virtual jboolean compareAndSet(::java::lang::Object *, ::java::lang::Object *);
+ virtual jboolean weakCompareAndSet(::java::lang::Object *, ::java::lang::Object *);
+ virtual ::java::lang::Object * getAndSet(::java::lang::Object *);
+ virtual ::java::lang::String * toString();
+private:
+ static const jlong serialVersionUID = -1848883965231344442LL;
+ static ::sun::misc::Unsafe * unsafe;
+ static jlong valueOffset;
+ ::java::lang::Object * volatile __attribute__((aligned(__alignof__( ::java::lang::Object)))) value;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_atomic_AtomicReference__
diff --git a/libjava/java/util/concurrent/atomic/AtomicReferenceArray.h b/libjava/java/util/concurrent/atomic/AtomicReferenceArray.h
new file mode 100644
index 000000000..4715f0cba
--- /dev/null
+++ b/libjava/java/util/concurrent/atomic/AtomicReferenceArray.h
@@ -0,0 +1,48 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_atomic_AtomicReferenceArray__
+#define __java_util_concurrent_atomic_AtomicReferenceArray__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+#include <gcj/array.h>
+
+extern "Java"
+{
+ namespace sun
+ {
+ namespace misc
+ {
+ class Unsafe;
+ }
+ }
+}
+
+class java::util::concurrent::atomic::AtomicReferenceArray : public ::java::lang::Object
+{
+
+ jlong rawIndex(jint);
+public:
+ AtomicReferenceArray(jint);
+ AtomicReferenceArray(JArray< ::java::lang::Object * > *);
+ virtual jint length();
+ virtual ::java::lang::Object * get(jint);
+ virtual void set(jint, ::java::lang::Object *);
+ virtual void lazySet(jint, ::java::lang::Object *);
+ virtual ::java::lang::Object * getAndSet(jint, ::java::lang::Object *);
+ virtual jboolean compareAndSet(jint, ::java::lang::Object *, ::java::lang::Object *);
+ virtual jboolean weakCompareAndSet(jint, ::java::lang::Object *, ::java::lang::Object *);
+ virtual ::java::lang::String * toString();
+private:
+ static const jlong serialVersionUID = -6209656149925076980LL;
+ static ::sun::misc::Unsafe * unsafe;
+ static jint base;
+ static jint scale;
+ JArray< ::java::lang::Object * > * __attribute__((aligned(__alignof__( ::java::lang::Object)))) array;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_atomic_AtomicReferenceArray__
diff --git a/libjava/java/util/concurrent/atomic/AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl.h b/libjava/java/util/concurrent/atomic/AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl.h
new file mode 100644
index 000000000..e74a4507e
--- /dev/null
+++ b/libjava/java/util/concurrent/atomic/AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl.h
@@ -0,0 +1,45 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_atomic_AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl__
+#define __java_util_concurrent_atomic_AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl__
+
+#pragma interface
+
+#include <java/util/concurrent/atomic/AtomicReferenceFieldUpdater.h>
+extern "Java"
+{
+ namespace sun
+ {
+ namespace misc
+ {
+ class Unsafe;
+ }
+ }
+}
+
+class java::util::concurrent::atomic::AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl : public ::java::util::concurrent::atomic::AtomicReferenceFieldUpdater
+{
+
+public: // actually package-private
+ AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl(::java::lang::Class *, ::java::lang::Class *, ::java::lang::String *);
+ void targetCheck(::java::lang::Object *);
+ void updateCheck(::java::lang::Object *, ::java::lang::Object *);
+public:
+ jboolean compareAndSet(::java::lang::Object *, ::java::lang::Object *, ::java::lang::Object *);
+ jboolean weakCompareAndSet(::java::lang::Object *, ::java::lang::Object *, ::java::lang::Object *);
+ void set(::java::lang::Object *, ::java::lang::Object *);
+ void lazySet(::java::lang::Object *, ::java::lang::Object *);
+ ::java::lang::Object * get(::java::lang::Object *);
+private:
+ void ensureProtectedAccess(::java::lang::Object *);
+ static ::sun::misc::Unsafe * unsafe;
+ jlong __attribute__((aligned(__alignof__( ::java::util::concurrent::atomic::AtomicReferenceFieldUpdater)))) offset;
+ ::java::lang::Class * tclass;
+ ::java::lang::Class * vclass;
+ ::java::lang::Class * cclass;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_atomic_AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl__
diff --git a/libjava/java/util/concurrent/atomic/AtomicReferenceFieldUpdater.h b/libjava/java/util/concurrent/atomic/AtomicReferenceFieldUpdater.h
new file mode 100644
index 000000000..d7e91e977
--- /dev/null
+++ b/libjava/java/util/concurrent/atomic/AtomicReferenceFieldUpdater.h
@@ -0,0 +1,28 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_atomic_AtomicReferenceFieldUpdater__
+#define __java_util_concurrent_atomic_AtomicReferenceFieldUpdater__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::atomic::AtomicReferenceFieldUpdater : public ::java::lang::Object
+{
+
+public:
+ static ::java::util::concurrent::atomic::AtomicReferenceFieldUpdater * newUpdater(::java::lang::Class *, ::java::lang::Class *, ::java::lang::String *);
+public: // actually protected
+ AtomicReferenceFieldUpdater();
+public:
+ virtual jboolean compareAndSet(::java::lang::Object *, ::java::lang::Object *, ::java::lang::Object *) = 0;
+ virtual jboolean weakCompareAndSet(::java::lang::Object *, ::java::lang::Object *, ::java::lang::Object *) = 0;
+ virtual void set(::java::lang::Object *, ::java::lang::Object *) = 0;
+ virtual void lazySet(::java::lang::Object *, ::java::lang::Object *) = 0;
+ virtual ::java::lang::Object * get(::java::lang::Object *) = 0;
+ virtual ::java::lang::Object * getAndSet(::java::lang::Object *, ::java::lang::Object *);
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_atomic_AtomicReferenceFieldUpdater__
diff --git a/libjava/java/util/concurrent/atomic/AtomicStampedReference$ReferenceIntegerPair.h b/libjava/java/util/concurrent/atomic/AtomicStampedReference$ReferenceIntegerPair.h
new file mode 100644
index 000000000..d76e45b1d
--- /dev/null
+++ b/libjava/java/util/concurrent/atomic/AtomicStampedReference$ReferenceIntegerPair.h
@@ -0,0 +1,25 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_atomic_AtomicStampedReference$ReferenceIntegerPair__
+#define __java_util_concurrent_atomic_AtomicStampedReference$ReferenceIntegerPair__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::atomic::AtomicStampedReference$ReferenceIntegerPair : public ::java::lang::Object
+{
+
+public: // actually package-private
+ AtomicStampedReference$ReferenceIntegerPair(::java::lang::Object *, jint);
+ static ::java::lang::Object * access$0(::java::util::concurrent::atomic::AtomicStampedReference$ReferenceIntegerPair *);
+ static jint access$1(::java::util::concurrent::atomic::AtomicStampedReference$ReferenceIntegerPair *);
+private:
+ ::java::lang::Object * __attribute__((aligned(__alignof__( ::java::lang::Object)))) reference;
+ jint integer;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_atomic_AtomicStampedReference$ReferenceIntegerPair__
diff --git a/libjava/java/util/concurrent/atomic/AtomicStampedReference.h b/libjava/java/util/concurrent/atomic/AtomicStampedReference.h
new file mode 100644
index 000000000..8e1169299
--- /dev/null
+++ b/libjava/java/util/concurrent/atomic/AtomicStampedReference.h
@@ -0,0 +1,31 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_atomic_AtomicStampedReference__
+#define __java_util_concurrent_atomic_AtomicStampedReference__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+#include <gcj/array.h>
+
+
+class java::util::concurrent::atomic::AtomicStampedReference : public ::java::lang::Object
+{
+
+public:
+ AtomicStampedReference(::java::lang::Object *, jint);
+ virtual ::java::lang::Object * getReference();
+ virtual jint getStamp();
+ virtual ::java::lang::Object * get(JArray< jint > *);
+ virtual jboolean weakCompareAndSet(::java::lang::Object *, ::java::lang::Object *, jint, jint);
+ virtual jboolean compareAndSet(::java::lang::Object *, ::java::lang::Object *, jint, jint);
+ virtual void set(::java::lang::Object *, jint);
+ virtual jboolean attemptStamp(::java::lang::Object *, jint);
+private:
+ ::java::util::concurrent::atomic::AtomicReference * __attribute__((aligned(__alignof__( ::java::lang::Object)))) atomicRef;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_atomic_AtomicStampedReference__
diff --git a/libjava/java/util/concurrent/atomic/natAtomicLong.cc b/libjava/java/util/concurrent/atomic/natAtomicLong.cc
new file mode 100644
index 000000000..3f78c8aa6
--- /dev/null
+++ b/libjava/java/util/concurrent/atomic/natAtomicLong.cc
@@ -0,0 +1,12 @@
+#include <config.h>
+
+#include <java/util/concurrent/atomic/AtomicLong.h>
+#include <gcj/cni.h>
+#include <java/lang/UnsupportedOperationException.h>
+
+jboolean
+java::util::concurrent::atomic::AtomicLong::VMSupportsCS8 ()
+{
+ // FIXME
+ return false;
+}
diff --git a/libjava/java/util/concurrent/locks/AbstractOwnableSynchronizer.h b/libjava/java/util/concurrent/locks/AbstractOwnableSynchronizer.h
new file mode 100644
index 000000000..8a14257c9
--- /dev/null
+++ b/libjava/java/util/concurrent/locks/AbstractOwnableSynchronizer.h
@@ -0,0 +1,25 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_locks_AbstractOwnableSynchronizer__
+#define __java_util_concurrent_locks_AbstractOwnableSynchronizer__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::locks::AbstractOwnableSynchronizer : public ::java::lang::Object
+{
+
+public: // actually protected
+ AbstractOwnableSynchronizer();
+ virtual void setExclusiveOwnerThread(::java::lang::Thread *);
+ virtual ::java::lang::Thread * getExclusiveOwnerThread();
+private:
+ static const jlong serialVersionUID = 3737899427754241961LL;
+ ::java::lang::Thread * __attribute__((aligned(__alignof__( ::java::lang::Object)))) exclusiveOwnerThread;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_locks_AbstractOwnableSynchronizer__
diff --git a/libjava/java/util/concurrent/locks/AbstractQueuedLongSynchronizer$ConditionObject.h b/libjava/java/util/concurrent/locks/AbstractQueuedLongSynchronizer$ConditionObject.h
new file mode 100644
index 000000000..123ab81b5
--- /dev/null
+++ b/libjava/java/util/concurrent/locks/AbstractQueuedLongSynchronizer$ConditionObject.h
@@ -0,0 +1,52 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_locks_AbstractQueuedLongSynchronizer$ConditionObject__
+#define __java_util_concurrent_locks_AbstractQueuedLongSynchronizer$ConditionObject__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::locks::AbstractQueuedLongSynchronizer$ConditionObject : public ::java::lang::Object
+{
+
+public:
+ AbstractQueuedLongSynchronizer$ConditionObject(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer *);
+private:
+ ::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node * addConditionWaiter();
+ void doSignal(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node *);
+ void doSignalAll(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node *);
+ jboolean isOnConditionQueue(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node *);
+ void unlinkCancelledWaiter(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node *);
+public:
+ virtual void signal();
+ virtual void signalAll();
+ virtual void awaitUninterruptibly();
+private:
+ jint checkInterruptWhileWaiting(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node *);
+ void reportInterruptAfterWait(jint);
+public:
+ virtual void await();
+ virtual jlong awaitNanos(jlong);
+ virtual jboolean awaitUntil(::java::util::Date *);
+ virtual jboolean await(jlong, ::java::util::concurrent::TimeUnit *);
+public: // actually package-private
+ virtual jboolean isOwnedBy(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer *);
+public: // actually protected
+ virtual jboolean hasWaiters();
+ virtual jint getWaitQueueLength();
+ virtual ::java::util::Collection * getWaitingThreads();
+private:
+ static const jlong serialVersionUID = 1173984872572414699LL;
+ ::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node * __attribute__((aligned(__alignof__( ::java::lang::Object)))) firstWaiter;
+ ::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node * lastWaiter;
+ static const jint REINTERRUPT = 1;
+ static const jint THROW_IE = -1;
+public: // actually package-private
+ ::java::util::concurrent::locks::AbstractQueuedLongSynchronizer * this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_locks_AbstractQueuedLongSynchronizer$ConditionObject__
diff --git a/libjava/java/util/concurrent/locks/AbstractQueuedLongSynchronizer$Node.h b/libjava/java/util/concurrent/locks/AbstractQueuedLongSynchronizer$Node.h
new file mode 100644
index 000000000..097692062
--- /dev/null
+++ b/libjava/java/util/concurrent/locks/AbstractQueuedLongSynchronizer$Node.h
@@ -0,0 +1,34 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_locks_AbstractQueuedLongSynchronizer$Node__
+#define __java_util_concurrent_locks_AbstractQueuedLongSynchronizer$Node__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node : public ::java::lang::Object
+{
+
+public: // actually package-private
+ jboolean isShared();
+ ::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node * predecessor();
+ AbstractQueuedLongSynchronizer$Node();
+ AbstractQueuedLongSynchronizer$Node(::java::lang::Thread *, ::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node *);
+ AbstractQueuedLongSynchronizer$Node(::java::lang::Thread *, jint);
+ static const jint CANCELLED = 1;
+ static const jint SIGNAL = -1;
+ static const jint CONDITION = -2;
+ static ::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node * SHARED;
+ static ::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node * EXCLUSIVE;
+ jint volatile __attribute__((aligned(__alignof__( ::java::lang::Object)))) waitStatus;
+ ::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node * volatile prev;
+ ::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node * volatile next;
+ ::java::lang::Thread * volatile thread;
+ ::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node * nextWaiter;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_locks_AbstractQueuedLongSynchronizer$Node__
diff --git a/libjava/java/util/concurrent/locks/AbstractQueuedLongSynchronizer.h b/libjava/java/util/concurrent/locks/AbstractQueuedLongSynchronizer.h
new file mode 100644
index 000000000..41f1f7cba
--- /dev/null
+++ b/libjava/java/util/concurrent/locks/AbstractQueuedLongSynchronizer.h
@@ -0,0 +1,115 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_locks_AbstractQueuedLongSynchronizer__
+#define __java_util_concurrent_locks_AbstractQueuedLongSynchronizer__
+
+#pragma interface
+
+#include <java/util/concurrent/locks/AbstractOwnableSynchronizer.h>
+extern "Java"
+{
+ namespace sun
+ {
+ namespace misc
+ {
+ class Unsafe;
+ }
+ }
+}
+
+class java::util::concurrent::locks::AbstractQueuedLongSynchronizer : public ::java::util::concurrent::locks::AbstractOwnableSynchronizer
+{
+
+public: // actually protected
+ AbstractQueuedLongSynchronizer();
+ virtual jlong getState();
+ virtual void setState(jlong);
+ virtual jboolean compareAndSetState(jlong, jlong);
+private:
+ ::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node * enq(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node *);
+ ::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node * addWaiter(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node *);
+ void setHead(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node *);
+ void unparkSuccessor(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node *);
+ void setHeadAndPropagate(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node *, jlong);
+ void cancelAcquire(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node *);
+ static jboolean shouldParkAfterFailedAcquire(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node *, ::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node *);
+ static void selfInterrupt();
+ jboolean parkAndCheckInterrupt();
+public: // actually package-private
+ virtual jboolean acquireQueued(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node *, jlong);
+private:
+ void doAcquireInterruptibly(jlong);
+ jboolean doAcquireNanos(jlong, jlong);
+ void doAcquireShared(jlong);
+ void doAcquireSharedInterruptibly(jlong);
+ jboolean doAcquireSharedNanos(jlong, jlong);
+public: // actually protected
+ virtual jboolean tryAcquire(jlong);
+ virtual jboolean tryRelease(jlong);
+ virtual jlong tryAcquireShared(jlong);
+ virtual jboolean tryReleaseShared(jlong);
+ virtual jboolean isHeldExclusively();
+public:
+ virtual void acquire(jlong);
+ virtual void acquireInterruptibly(jlong);
+ virtual jboolean tryAcquireNanos(jlong, jlong);
+ virtual jboolean release(jlong);
+ virtual void acquireShared(jlong);
+ virtual void acquireSharedInterruptibly(jlong);
+ virtual jboolean tryAcquireSharedNanos(jlong, jlong);
+ virtual jboolean releaseShared(jlong);
+ virtual jboolean hasQueuedThreads();
+ virtual jboolean hasContended();
+ virtual ::java::lang::Thread * getFirstQueuedThread();
+private:
+ ::java::lang::Thread * fullGetFirstQueuedThread();
+public:
+ virtual jboolean isQueued(::java::lang::Thread *);
+public: // actually package-private
+ virtual jboolean apparentlyFirstQueuedIsExclusive();
+ virtual jboolean isFirst(::java::lang::Thread *);
+ virtual jboolean fullIsFirst(::java::lang::Thread *);
+public:
+ virtual jint getQueueLength();
+ virtual ::java::util::Collection * getQueuedThreads();
+ virtual ::java::util::Collection * getExclusiveQueuedThreads();
+ virtual ::java::util::Collection * getSharedQueuedThreads();
+ virtual ::java::lang::String * toString();
+public: // actually package-private
+ virtual jboolean isOnSyncQueue(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node *);
+private:
+ jboolean findNodeFromTail(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node *);
+public: // actually package-private
+ virtual jboolean transferForSignal(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node *);
+ virtual jboolean transferAfterCancelledWait(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node *);
+ virtual jlong fullyRelease(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node *);
+public:
+ virtual jboolean owns(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$ConditionObject *);
+ virtual jboolean hasWaiters(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$ConditionObject *);
+ virtual jint getWaitQueueLength(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$ConditionObject *);
+ virtual ::java::util::Collection * getWaitingThreads(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$ConditionObject *);
+private:
+ jboolean compareAndSetHead(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node *);
+ jboolean compareAndSetTail(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node *, ::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node *);
+ static jboolean compareAndSetWaitStatus(::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node *, jint, jint);
+public: // actually package-private
+ static void access$0();
+private:
+ static const jlong serialVersionUID = 7373984972572414692LL;
+ ::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node * volatile __attribute__((aligned(__alignof__( ::java::util::concurrent::locks::AbstractOwnableSynchronizer)))) head;
+ ::java::util::concurrent::locks::AbstractQueuedLongSynchronizer$Node * volatile tail;
+ jlong volatile state;
+public: // actually package-private
+ static const jlong spinForTimeoutThreshold = 1000LL;
+private:
+ static ::sun::misc::Unsafe * unsafe;
+ static jlong stateOffset;
+ static jlong headOffset;
+ static jlong tailOffset;
+ static jlong waitStatusOffset;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_locks_AbstractQueuedLongSynchronizer__
diff --git a/libjava/java/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject.h b/libjava/java/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject.h
new file mode 100644
index 000000000..67ca64f6e
--- /dev/null
+++ b/libjava/java/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject.h
@@ -0,0 +1,52 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_locks_AbstractQueuedSynchronizer$ConditionObject__
+#define __java_util_concurrent_locks_AbstractQueuedSynchronizer$ConditionObject__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::locks::AbstractQueuedSynchronizer$ConditionObject : public ::java::lang::Object
+{
+
+public:
+ AbstractQueuedSynchronizer$ConditionObject(::java::util::concurrent::locks::AbstractQueuedSynchronizer *);
+private:
+ ::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node * addConditionWaiter();
+ void doSignal(::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node *);
+ void doSignalAll(::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node *);
+ jboolean isOnConditionQueue(::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node *);
+ void unlinkCancelledWaiter(::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node *);
+public:
+ virtual void signal();
+ virtual void signalAll();
+ virtual void awaitUninterruptibly();
+private:
+ jint checkInterruptWhileWaiting(::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node *);
+ void reportInterruptAfterWait(jint);
+public:
+ virtual void await();
+ virtual jlong awaitNanos(jlong);
+ virtual jboolean awaitUntil(::java::util::Date *);
+ virtual jboolean await(jlong, ::java::util::concurrent::TimeUnit *);
+public: // actually package-private
+ virtual jboolean isOwnedBy(::java::util::concurrent::locks::AbstractQueuedSynchronizer *);
+public: // actually protected
+ virtual jboolean hasWaiters();
+ virtual jint getWaitQueueLength();
+ virtual ::java::util::Collection * getWaitingThreads();
+private:
+ static const jlong serialVersionUID = 1173984872572414699LL;
+ ::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node * __attribute__((aligned(__alignof__( ::java::lang::Object)))) firstWaiter;
+ ::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node * lastWaiter;
+ static const jint REINTERRUPT = 1;
+ static const jint THROW_IE = -1;
+public: // actually package-private
+ ::java::util::concurrent::locks::AbstractQueuedSynchronizer * this$0;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_locks_AbstractQueuedSynchronizer$ConditionObject__
diff --git a/libjava/java/util/concurrent/locks/AbstractQueuedSynchronizer$Node.h b/libjava/java/util/concurrent/locks/AbstractQueuedSynchronizer$Node.h
new file mode 100644
index 000000000..cc4955057
--- /dev/null
+++ b/libjava/java/util/concurrent/locks/AbstractQueuedSynchronizer$Node.h
@@ -0,0 +1,34 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_locks_AbstractQueuedSynchronizer$Node__
+#define __java_util_concurrent_locks_AbstractQueuedSynchronizer$Node__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::locks::AbstractQueuedSynchronizer$Node : public ::java::lang::Object
+{
+
+public: // actually package-private
+ jboolean isShared();
+ ::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node * predecessor();
+ AbstractQueuedSynchronizer$Node();
+ AbstractQueuedSynchronizer$Node(::java::lang::Thread *, ::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node *);
+ AbstractQueuedSynchronizer$Node(::java::lang::Thread *, jint);
+ static const jint CANCELLED = 1;
+ static const jint SIGNAL = -1;
+ static const jint CONDITION = -2;
+ static ::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node * SHARED;
+ static ::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node * EXCLUSIVE;
+ jint volatile __attribute__((aligned(__alignof__( ::java::lang::Object)))) waitStatus;
+ ::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node * volatile prev;
+ ::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node * volatile next;
+ ::java::lang::Thread * volatile thread;
+ ::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node * nextWaiter;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_locks_AbstractQueuedSynchronizer$Node__
diff --git a/libjava/java/util/concurrent/locks/AbstractQueuedSynchronizer.h b/libjava/java/util/concurrent/locks/AbstractQueuedSynchronizer.h
new file mode 100644
index 000000000..e50fcef61
--- /dev/null
+++ b/libjava/java/util/concurrent/locks/AbstractQueuedSynchronizer.h
@@ -0,0 +1,115 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_locks_AbstractQueuedSynchronizer__
+#define __java_util_concurrent_locks_AbstractQueuedSynchronizer__
+
+#pragma interface
+
+#include <java/util/concurrent/locks/AbstractOwnableSynchronizer.h>
+extern "Java"
+{
+ namespace sun
+ {
+ namespace misc
+ {
+ class Unsafe;
+ }
+ }
+}
+
+class java::util::concurrent::locks::AbstractQueuedSynchronizer : public ::java::util::concurrent::locks::AbstractOwnableSynchronizer
+{
+
+public: // actually protected
+ AbstractQueuedSynchronizer();
+ virtual jint getState();
+ virtual void setState(jint);
+ virtual jboolean compareAndSetState(jint, jint);
+private:
+ ::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node * enq(::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node *);
+ ::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node * addWaiter(::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node *);
+ void setHead(::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node *);
+ void unparkSuccessor(::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node *);
+ void setHeadAndPropagate(::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node *, jint);
+ void cancelAcquire(::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node *);
+ static jboolean shouldParkAfterFailedAcquire(::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node *, ::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node *);
+ static void selfInterrupt();
+ jboolean parkAndCheckInterrupt();
+public: // actually package-private
+ virtual jboolean acquireQueued(::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node *, jint);
+private:
+ void doAcquireInterruptibly(jint);
+ jboolean doAcquireNanos(jint, jlong);
+ void doAcquireShared(jint);
+ void doAcquireSharedInterruptibly(jint);
+ jboolean doAcquireSharedNanos(jint, jlong);
+public: // actually protected
+ virtual jboolean tryAcquire(jint);
+ virtual jboolean tryRelease(jint);
+ virtual jint tryAcquireShared(jint);
+ virtual jboolean tryReleaseShared(jint);
+ virtual jboolean isHeldExclusively();
+public:
+ virtual void acquire(jint);
+ virtual void acquireInterruptibly(jint);
+ virtual jboolean tryAcquireNanos(jint, jlong);
+ virtual jboolean release(jint);
+ virtual void acquireShared(jint);
+ virtual void acquireSharedInterruptibly(jint);
+ virtual jboolean tryAcquireSharedNanos(jint, jlong);
+ virtual jboolean releaseShared(jint);
+ virtual jboolean hasQueuedThreads();
+ virtual jboolean hasContended();
+ virtual ::java::lang::Thread * getFirstQueuedThread();
+private:
+ ::java::lang::Thread * fullGetFirstQueuedThread();
+public:
+ virtual jboolean isQueued(::java::lang::Thread *);
+public: // actually package-private
+ virtual jboolean apparentlyFirstQueuedIsExclusive();
+ virtual jboolean isFirst(::java::lang::Thread *);
+ virtual jboolean fullIsFirst(::java::lang::Thread *);
+public:
+ virtual jint getQueueLength();
+ virtual ::java::util::Collection * getQueuedThreads();
+ virtual ::java::util::Collection * getExclusiveQueuedThreads();
+ virtual ::java::util::Collection * getSharedQueuedThreads();
+ virtual ::java::lang::String * toString();
+public: // actually package-private
+ virtual jboolean isOnSyncQueue(::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node *);
+private:
+ jboolean findNodeFromTail(::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node *);
+public: // actually package-private
+ virtual jboolean transferForSignal(::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node *);
+ virtual jboolean transferAfterCancelledWait(::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node *);
+ virtual jint fullyRelease(::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node *);
+public:
+ virtual jboolean owns(::java::util::concurrent::locks::AbstractQueuedSynchronizer$ConditionObject *);
+ virtual jboolean hasWaiters(::java::util::concurrent::locks::AbstractQueuedSynchronizer$ConditionObject *);
+ virtual jint getWaitQueueLength(::java::util::concurrent::locks::AbstractQueuedSynchronizer$ConditionObject *);
+ virtual ::java::util::Collection * getWaitingThreads(::java::util::concurrent::locks::AbstractQueuedSynchronizer$ConditionObject *);
+private:
+ jboolean compareAndSetHead(::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node *);
+ jboolean compareAndSetTail(::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node *, ::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node *);
+ static jboolean compareAndSetWaitStatus(::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node *, jint, jint);
+public: // actually package-private
+ static void access$0();
+private:
+ static const jlong serialVersionUID = 7373984972572414691LL;
+ ::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node * volatile __attribute__((aligned(__alignof__( ::java::util::concurrent::locks::AbstractOwnableSynchronizer)))) head;
+ ::java::util::concurrent::locks::AbstractQueuedSynchronizer$Node * volatile tail;
+ jint volatile state;
+public: // actually package-private
+ static const jlong spinForTimeoutThreshold = 1000LL;
+private:
+ static ::sun::misc::Unsafe * unsafe;
+ static jlong stateOffset;
+ static jlong headOffset;
+ static jlong tailOffset;
+ static jlong waitStatusOffset;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_locks_AbstractQueuedSynchronizer__
diff --git a/libjava/java/util/concurrent/locks/Condition.h b/libjava/java/util/concurrent/locks/Condition.h
new file mode 100644
index 000000000..141a4e919
--- /dev/null
+++ b/libjava/java/util/concurrent/locks/Condition.h
@@ -0,0 +1,25 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_locks_Condition__
+#define __java_util_concurrent_locks_Condition__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::locks::Condition : public ::java::lang::Object
+{
+
+public:
+ virtual void await() = 0;
+ virtual void awaitUninterruptibly() = 0;
+ virtual jlong awaitNanos(jlong) = 0;
+ virtual jboolean await(jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ virtual jboolean awaitUntil(::java::util::Date *) = 0;
+ virtual void signal() = 0;
+ virtual void signalAll() = 0;
+ static ::java::lang::Class class$;
+} __attribute__ ((java_interface));
+
+#endif // __java_util_concurrent_locks_Condition__
diff --git a/libjava/java/util/concurrent/locks/Lock.h b/libjava/java/util/concurrent/locks/Lock.h
new file mode 100644
index 000000000..b00f601e7
--- /dev/null
+++ b/libjava/java/util/concurrent/locks/Lock.h
@@ -0,0 +1,24 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_locks_Lock__
+#define __java_util_concurrent_locks_Lock__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::locks::Lock : public ::java::lang::Object
+{
+
+public:
+ virtual void lock() = 0;
+ virtual void lockInterruptibly() = 0;
+ virtual jboolean tryLock() = 0;
+ virtual jboolean tryLock(jlong, ::java::util::concurrent::TimeUnit *) = 0;
+ virtual void unlock() = 0;
+ virtual ::java::util::concurrent::locks::Condition * newCondition() = 0;
+ static ::java::lang::Class class$;
+} __attribute__ ((java_interface));
+
+#endif // __java_util_concurrent_locks_Lock__
diff --git a/libjava/java/util/concurrent/locks/LockSupport.h b/libjava/java/util/concurrent/locks/LockSupport.h
new file mode 100644
index 000000000..15ef7306f
--- /dev/null
+++ b/libjava/java/util/concurrent/locks/LockSupport.h
@@ -0,0 +1,42 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_locks_LockSupport__
+#define __java_util_concurrent_locks_LockSupport__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+extern "Java"
+{
+ namespace sun
+ {
+ namespace misc
+ {
+ class Unsafe;
+ }
+ }
+}
+
+class java::util::concurrent::locks::LockSupport : public ::java::lang::Object
+{
+
+ LockSupport();
+ static void setBlocker(::java::lang::Thread *, ::java::lang::Object *);
+public:
+ static void unpark(::java::lang::Thread *);
+ static void park(::java::lang::Object *);
+ static void parkNanos(::java::lang::Object *, jlong);
+ static void parkUntil(::java::lang::Object *, jlong);
+ static ::java::lang::Object * getBlocker(::java::lang::Thread *);
+ static void park();
+ static void parkNanos(jlong);
+ static void parkUntil(jlong);
+private:
+ static ::sun::misc::Unsafe * unsafe;
+ static jlong parkBlockerOffset;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_locks_LockSupport__
diff --git a/libjava/java/util/concurrent/locks/ReadWriteLock.h b/libjava/java/util/concurrent/locks/ReadWriteLock.h
new file mode 100644
index 000000000..1f4ae2e72
--- /dev/null
+++ b/libjava/java/util/concurrent/locks/ReadWriteLock.h
@@ -0,0 +1,20 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_locks_ReadWriteLock__
+#define __java_util_concurrent_locks_ReadWriteLock__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::locks::ReadWriteLock : public ::java::lang::Object
+{
+
+public:
+ virtual ::java::util::concurrent::locks::Lock * readLock() = 0;
+ virtual ::java::util::concurrent::locks::Lock * writeLock() = 0;
+ static ::java::lang::Class class$;
+} __attribute__ ((java_interface));
+
+#endif // __java_util_concurrent_locks_ReadWriteLock__
diff --git a/libjava/java/util/concurrent/locks/ReentrantLock$FairSync.h b/libjava/java/util/concurrent/locks/ReentrantLock$FairSync.h
new file mode 100644
index 000000000..d4268afcd
--- /dev/null
+++ b/libjava/java/util/concurrent/locks/ReentrantLock$FairSync.h
@@ -0,0 +1,25 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_locks_ReentrantLock$FairSync__
+#define __java_util_concurrent_locks_ReentrantLock$FairSync__
+
+#pragma interface
+
+#include <java/util/concurrent/locks/ReentrantLock$Sync.h>
+
+class java::util::concurrent::locks::ReentrantLock$FairSync : public ::java::util::concurrent::locks::ReentrantLock$Sync
+{
+
+public: // actually package-private
+ ReentrantLock$FairSync();
+ void lock();
+public: // actually protected
+ jboolean tryAcquire(jint);
+private:
+ static const jlong serialVersionUID = -3000897897090466540LL;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_locks_ReentrantLock$FairSync__
diff --git a/libjava/java/util/concurrent/locks/ReentrantLock$NonfairSync.h b/libjava/java/util/concurrent/locks/ReentrantLock$NonfairSync.h
new file mode 100644
index 000000000..743a0bd75
--- /dev/null
+++ b/libjava/java/util/concurrent/locks/ReentrantLock$NonfairSync.h
@@ -0,0 +1,25 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_locks_ReentrantLock$NonfairSync__
+#define __java_util_concurrent_locks_ReentrantLock$NonfairSync__
+
+#pragma interface
+
+#include <java/util/concurrent/locks/ReentrantLock$Sync.h>
+
+class java::util::concurrent::locks::ReentrantLock$NonfairSync : public ::java::util::concurrent::locks::ReentrantLock$Sync
+{
+
+public: // actually package-private
+ ReentrantLock$NonfairSync();
+ void lock();
+public: // actually protected
+ jboolean tryAcquire(jint);
+private:
+ static const jlong serialVersionUID = 7316153563782823691LL;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_locks_ReentrantLock$NonfairSync__
diff --git a/libjava/java/util/concurrent/locks/ReentrantLock$Sync.h b/libjava/java/util/concurrent/locks/ReentrantLock$Sync.h
new file mode 100644
index 000000000..b3656d0df
--- /dev/null
+++ b/libjava/java/util/concurrent/locks/ReentrantLock$Sync.h
@@ -0,0 +1,33 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_locks_ReentrantLock$Sync__
+#define __java_util_concurrent_locks_ReentrantLock$Sync__
+
+#pragma interface
+
+#include <java/util/concurrent/locks/AbstractQueuedSynchronizer.h>
+
+class java::util::concurrent::locks::ReentrantLock$Sync : public ::java::util::concurrent::locks::AbstractQueuedSynchronizer
+{
+
+public: // actually package-private
+ ReentrantLock$Sync();
+ virtual void lock() = 0;
+ virtual jboolean nonfairTryAcquire(jint);
+public: // actually protected
+ virtual jboolean tryRelease(jint);
+ virtual jboolean isHeldExclusively();
+public: // actually package-private
+ virtual ::java::util::concurrent::locks::AbstractQueuedSynchronizer$ConditionObject * newCondition();
+ virtual ::java::lang::Thread * getOwner();
+ virtual jint getHoldCount();
+ virtual jboolean isLocked();
+private:
+ void readObject(::java::io::ObjectInputStream *);
+ static const jlong serialVersionUID = -5179523762034025860LL;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_locks_ReentrantLock$Sync__
diff --git a/libjava/java/util/concurrent/locks/ReentrantLock.h b/libjava/java/util/concurrent/locks/ReentrantLock.h
new file mode 100644
index 000000000..5cac4b27f
--- /dev/null
+++ b/libjava/java/util/concurrent/locks/ReentrantLock.h
@@ -0,0 +1,49 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_locks_ReentrantLock__
+#define __java_util_concurrent_locks_ReentrantLock__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::locks::ReentrantLock : public ::java::lang::Object
+{
+
+public:
+ ReentrantLock();
+ ReentrantLock(jboolean);
+ virtual void lock();
+ virtual void lockInterruptibly();
+ virtual jboolean tryLock();
+ virtual jboolean tryLock(jlong, ::java::util::concurrent::TimeUnit *);
+ virtual void unlock();
+ virtual ::java::util::concurrent::locks::Condition * newCondition();
+ virtual jint getHoldCount();
+ virtual jboolean isHeldByCurrentThread();
+ virtual jboolean isLocked();
+ virtual jboolean isFair();
+public: // actually protected
+ virtual ::java::lang::Thread * getOwner();
+public:
+ virtual jboolean hasQueuedThreads();
+ virtual jboolean hasQueuedThread(::java::lang::Thread *);
+ virtual jint getQueueLength();
+public: // actually protected
+ virtual ::java::util::Collection * getQueuedThreads();
+public:
+ virtual jboolean hasWaiters(::java::util::concurrent::locks::Condition *);
+ virtual jint getWaitQueueLength(::java::util::concurrent::locks::Condition *);
+public: // actually protected
+ virtual ::java::util::Collection * getWaitingThreads(::java::util::concurrent::locks::Condition *);
+public:
+ virtual ::java::lang::String * toString();
+private:
+ static const jlong serialVersionUID = 7373984872572414699LL;
+ ::java::util::concurrent::locks::ReentrantLock$Sync * __attribute__((aligned(__alignof__( ::java::lang::Object)))) sync;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_locks_ReentrantLock__
diff --git a/libjava/java/util/concurrent/locks/ReentrantReadWriteLock$FairSync.h b/libjava/java/util/concurrent/locks/ReentrantReadWriteLock$FairSync.h
new file mode 100644
index 000000000..05090b5b1
--- /dev/null
+++ b/libjava/java/util/concurrent/locks/ReentrantReadWriteLock$FairSync.h
@@ -0,0 +1,24 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_locks_ReentrantReadWriteLock$FairSync__
+#define __java_util_concurrent_locks_ReentrantReadWriteLock$FairSync__
+
+#pragma interface
+
+#include <java/util/concurrent/locks/ReentrantReadWriteLock$Sync.h>
+
+class java::util::concurrent::locks::ReentrantReadWriteLock$FairSync : public ::java::util::concurrent::locks::ReentrantReadWriteLock$Sync
+{
+
+public: // actually package-private
+ ReentrantReadWriteLock$FairSync();
+ jboolean writerShouldBlock(::java::lang::Thread *);
+ jboolean readerShouldBlock(::java::lang::Thread *);
+private:
+ static const jlong serialVersionUID = -2274990926593161451LL;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_locks_ReentrantReadWriteLock$FairSync__
diff --git a/libjava/java/util/concurrent/locks/ReentrantReadWriteLock$NonfairSync.h b/libjava/java/util/concurrent/locks/ReentrantReadWriteLock$NonfairSync.h
new file mode 100644
index 000000000..29a565ae4
--- /dev/null
+++ b/libjava/java/util/concurrent/locks/ReentrantReadWriteLock$NonfairSync.h
@@ -0,0 +1,24 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_locks_ReentrantReadWriteLock$NonfairSync__
+#define __java_util_concurrent_locks_ReentrantReadWriteLock$NonfairSync__
+
+#pragma interface
+
+#include <java/util/concurrent/locks/ReentrantReadWriteLock$Sync.h>
+
+class java::util::concurrent::locks::ReentrantReadWriteLock$NonfairSync : public ::java::util::concurrent::locks::ReentrantReadWriteLock$Sync
+{
+
+public: // actually package-private
+ ReentrantReadWriteLock$NonfairSync();
+ jboolean writerShouldBlock(::java::lang::Thread *);
+ jboolean readerShouldBlock(::java::lang::Thread *);
+private:
+ static const jlong serialVersionUID = -8159625535654395037LL;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_locks_ReentrantReadWriteLock$NonfairSync__
diff --git a/libjava/java/util/concurrent/locks/ReentrantReadWriteLock$ReadLock.h b/libjava/java/util/concurrent/locks/ReentrantReadWriteLock$ReadLock.h
new file mode 100644
index 000000000..0f48a6cb8
--- /dev/null
+++ b/libjava/java/util/concurrent/locks/ReentrantReadWriteLock$ReadLock.h
@@ -0,0 +1,31 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_locks_ReentrantReadWriteLock$ReadLock__
+#define __java_util_concurrent_locks_ReentrantReadWriteLock$ReadLock__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::locks::ReentrantReadWriteLock$ReadLock : public ::java::lang::Object
+{
+
+public: // actually protected
+ ReentrantReadWriteLock$ReadLock(::java::util::concurrent::locks::ReentrantReadWriteLock *);
+public:
+ virtual void lock();
+ virtual void lockInterruptibly();
+ virtual jboolean tryLock();
+ virtual jboolean tryLock(jlong, ::java::util::concurrent::TimeUnit *);
+ virtual void unlock();
+ virtual ::java::util::concurrent::locks::Condition * newCondition();
+ virtual ::java::lang::String * toString();
+private:
+ static const jlong serialVersionUID = -5992448646407690164LL;
+ ::java::util::concurrent::locks::ReentrantReadWriteLock$Sync * __attribute__((aligned(__alignof__( ::java::lang::Object)))) sync;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_locks_ReentrantReadWriteLock$ReadLock__
diff --git a/libjava/java/util/concurrent/locks/ReentrantReadWriteLock$Sync$HoldCounter.h b/libjava/java/util/concurrent/locks/ReentrantReadWriteLock$Sync$HoldCounter.h
new file mode 100644
index 000000000..4813f0d8f
--- /dev/null
+++ b/libjava/java/util/concurrent/locks/ReentrantReadWriteLock$Sync$HoldCounter.h
@@ -0,0 +1,23 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_locks_ReentrantReadWriteLock$Sync$HoldCounter__
+#define __java_util_concurrent_locks_ReentrantReadWriteLock$Sync$HoldCounter__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::locks::ReentrantReadWriteLock$Sync$HoldCounter : public ::java::lang::Object
+{
+
+public: // actually package-private
+ ReentrantReadWriteLock$Sync$HoldCounter();
+ jint tryDecrement();
+ jint __attribute__((aligned(__alignof__( ::java::lang::Object)))) count;
+ jlong tid;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_locks_ReentrantReadWriteLock$Sync$HoldCounter__
diff --git a/libjava/java/util/concurrent/locks/ReentrantReadWriteLock$Sync$ThreadLocalHoldCounter.h b/libjava/java/util/concurrent/locks/ReentrantReadWriteLock$Sync$ThreadLocalHoldCounter.h
new file mode 100644
index 000000000..10f87c922
--- /dev/null
+++ b/libjava/java/util/concurrent/locks/ReentrantReadWriteLock$Sync$ThreadLocalHoldCounter.h
@@ -0,0 +1,22 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_locks_ReentrantReadWriteLock$Sync$ThreadLocalHoldCounter__
+#define __java_util_concurrent_locks_ReentrantReadWriteLock$Sync$ThreadLocalHoldCounter__
+
+#pragma interface
+
+#include <java/lang/ThreadLocal.h>
+
+class java::util::concurrent::locks::ReentrantReadWriteLock$Sync$ThreadLocalHoldCounter : public ::java::lang::ThreadLocal
+{
+
+public: // actually package-private
+ ReentrantReadWriteLock$Sync$ThreadLocalHoldCounter();
+public:
+ ::java::util::concurrent::locks::ReentrantReadWriteLock$Sync$HoldCounter * ReentrantReadWriteLock$Sync$ThreadLocalHoldCounter$initialValue();
+ ::java::lang::Object * initialValue();
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_locks_ReentrantReadWriteLock$Sync$ThreadLocalHoldCounter__
diff --git a/libjava/java/util/concurrent/locks/ReentrantReadWriteLock$Sync.h b/libjava/java/util/concurrent/locks/ReentrantReadWriteLock$Sync.h
new file mode 100644
index 000000000..d1d43078f
--- /dev/null
+++ b/libjava/java/util/concurrent/locks/ReentrantReadWriteLock$Sync.h
@@ -0,0 +1,55 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_locks_ReentrantReadWriteLock$Sync__
+#define __java_util_concurrent_locks_ReentrantReadWriteLock$Sync__
+
+#pragma interface
+
+#include <java/util/concurrent/locks/AbstractQueuedSynchronizer.h>
+
+class java::util::concurrent::locks::ReentrantReadWriteLock$Sync : public ::java::util::concurrent::locks::AbstractQueuedSynchronizer
+{
+
+public: // actually package-private
+ static jint sharedCount(jint);
+ static jint exclusiveCount(jint);
+ ReentrantReadWriteLock$Sync();
+ virtual jboolean readerShouldBlock(::java::lang::Thread *) = 0;
+ virtual jboolean writerShouldBlock(::java::lang::Thread *) = 0;
+public: // actually protected
+ virtual jboolean tryRelease(jint);
+ virtual jboolean tryAcquire(jint);
+ virtual jboolean tryReleaseShared(jint);
+ virtual jint tryAcquireShared(jint);
+public: // actually package-private
+ virtual jint fullTryAcquireShared(::java::lang::Thread *);
+ virtual jboolean tryWriteLock();
+ virtual jboolean tryReadLock();
+public: // actually protected
+ virtual jboolean isHeldExclusively();
+public: // actually package-private
+ virtual ::java::util::concurrent::locks::AbstractQueuedSynchronizer$ConditionObject * newCondition();
+ virtual ::java::lang::Thread * getOwner();
+ virtual jint getReadLockCount();
+ virtual jboolean isWriteLocked();
+ virtual jint getWriteHoldCount();
+ virtual jint getReadHoldCount();
+private:
+ void readObject(::java::io::ObjectInputStream *);
+public: // actually package-private
+ virtual jint getCount();
+private:
+ static const jlong serialVersionUID = 6317671515068378041LL;
+public: // actually package-private
+ static const jint SHARED_SHIFT = 16;
+ static const jint SHARED_UNIT = 65536;
+ static const jint MAX_COUNT = 65535;
+ static const jint EXCLUSIVE_MASK = 65535;
+ ::java::util::concurrent::locks::ReentrantReadWriteLock$Sync$ThreadLocalHoldCounter * __attribute__((aligned(__alignof__( ::java::util::concurrent::locks::AbstractQueuedSynchronizer)))) readHolds;
+ ::java::util::concurrent::locks::ReentrantReadWriteLock$Sync$HoldCounter * cachedHoldCounter;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_locks_ReentrantReadWriteLock$Sync__
diff --git a/libjava/java/util/concurrent/locks/ReentrantReadWriteLock$WriteLock.h b/libjava/java/util/concurrent/locks/ReentrantReadWriteLock$WriteLock.h
new file mode 100644
index 000000000..4e57d53c6
--- /dev/null
+++ b/libjava/java/util/concurrent/locks/ReentrantReadWriteLock$WriteLock.h
@@ -0,0 +1,33 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_locks_ReentrantReadWriteLock$WriteLock__
+#define __java_util_concurrent_locks_ReentrantReadWriteLock$WriteLock__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::locks::ReentrantReadWriteLock$WriteLock : public ::java::lang::Object
+{
+
+public: // actually protected
+ ReentrantReadWriteLock$WriteLock(::java::util::concurrent::locks::ReentrantReadWriteLock *);
+public:
+ virtual void lock();
+ virtual void lockInterruptibly();
+ virtual jboolean tryLock();
+ virtual jboolean tryLock(jlong, ::java::util::concurrent::TimeUnit *);
+ virtual void unlock();
+ virtual ::java::util::concurrent::locks::Condition * newCondition();
+ virtual ::java::lang::String * toString();
+ virtual jboolean isHeldByCurrentThread();
+ virtual jint getHoldCount();
+private:
+ static const jlong serialVersionUID = -4992448646407690164LL;
+ ::java::util::concurrent::locks::ReentrantReadWriteLock$Sync * __attribute__((aligned(__alignof__( ::java::lang::Object)))) sync;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_locks_ReentrantReadWriteLock$WriteLock__
diff --git a/libjava/java/util/concurrent/locks/ReentrantReadWriteLock.h b/libjava/java/util/concurrent/locks/ReentrantReadWriteLock.h
new file mode 100644
index 000000000..e7da50a75
--- /dev/null
+++ b/libjava/java/util/concurrent/locks/ReentrantReadWriteLock.h
@@ -0,0 +1,57 @@
+
+// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-
+
+#ifndef __java_util_concurrent_locks_ReentrantReadWriteLock__
+#define __java_util_concurrent_locks_ReentrantReadWriteLock__
+
+#pragma interface
+
+#include <java/lang/Object.h>
+
+class java::util::concurrent::locks::ReentrantReadWriteLock : public ::java::lang::Object
+{
+
+public:
+ ReentrantReadWriteLock();
+ ReentrantReadWriteLock(jboolean);
+ virtual ::java::util::concurrent::locks::ReentrantReadWriteLock$WriteLock * ReentrantReadWriteLock$writeLock();
+ virtual ::java::util::concurrent::locks::ReentrantReadWriteLock$ReadLock * ReentrantReadWriteLock$readLock();
+ virtual jboolean isFair();
+public: // actually protected
+ virtual ::java::lang::Thread * getOwner();
+public:
+ virtual jint getReadLockCount();
+ virtual jboolean isWriteLocked();
+ virtual jboolean isWriteLockedByCurrentThread();
+ virtual jint getWriteHoldCount();
+ virtual jint getReadHoldCount();
+public: // actually protected
+ virtual ::java::util::Collection * getQueuedWriterThreads();
+ virtual ::java::util::Collection * getQueuedReaderThreads();
+public:
+ virtual jboolean hasQueuedThreads();
+ virtual jboolean hasQueuedThread(::java::lang::Thread *);
+ virtual jint getQueueLength();
+public: // actually protected
+ virtual ::java::util::Collection * getQueuedThreads();
+public:
+ virtual jboolean hasWaiters(::java::util::concurrent::locks::Condition *);
+ virtual jint getWaitQueueLength(::java::util::concurrent::locks::Condition *);
+public: // actually protected
+ virtual ::java::util::Collection * getWaitingThreads(::java::util::concurrent::locks::Condition *);
+public:
+ virtual ::java::lang::String * toString();
+ virtual ::java::util::concurrent::locks::Lock * readLock();
+ virtual ::java::util::concurrent::locks::Lock * writeLock();
+public: // actually package-private
+ static ::java::util::concurrent::locks::ReentrantReadWriteLock$Sync * access$2(::java::util::concurrent::locks::ReentrantReadWriteLock *);
+private:
+ static const jlong serialVersionUID = -6992448646407690164LL;
+ ::java::util::concurrent::locks::ReentrantReadWriteLock$ReadLock * __attribute__((aligned(__alignof__( ::java::lang::Object)))) readerLock;
+ ::java::util::concurrent::locks::ReentrantReadWriteLock$WriteLock * writerLock;
+ ::java::util::concurrent::locks::ReentrantReadWriteLock$Sync * sync;
+public:
+ static ::java::lang::Class class$;
+};
+
+#endif // __java_util_concurrent_locks_ReentrantReadWriteLock__